@open-everywhere/provider-slack 0.1.5 → 0.3.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/NOTICE +9 -9
- package/README.md +1 -1
- package/agent/app-manifest.ts +44 -9
- package/agent/channels/slack-commands.ts +9 -5
- package/agent/channels/slack-events.ts +76 -13
- package/agent/channels/slack-front.ts +4 -80
- package/agent/channels/slack-post-arm.ts +1 -42
- package/agent/channels/slack-task-card.ts +182 -0
- package/agent/channels/slack.ts +518 -468
- package/agent/contributions.ts +1 -1
- package/agent/docs-generated.ts +1 -1
- package/agent/ops.ts +20 -2
- package/agent/setup/claim.ts +16 -1
- package/agent/setup/eve-credentials.ts +10 -2
- package/agent/setup/page.ts +79 -14
- package/agent/surface-parity.ts +0 -6
- package/dist/agent/app-manifest.d.ts +20 -4
- package/dist/agent/app-manifest.d.ts.map +1 -1
- package/dist/agent/app-manifest.js +29 -6
- package/dist/agent/app-manifest.js.map +1 -1
- package/dist/agent/channels/slack-commands.d.ts.map +1 -1
- package/dist/agent/channels/slack-commands.js +9 -6
- package/dist/agent/channels/slack-commands.js.map +1 -1
- package/dist/agent/channels/slack-events.d.ts +28 -6
- package/dist/agent/channels/slack-events.d.ts.map +1 -1
- package/dist/agent/channels/slack-events.js +74 -14
- package/dist/agent/channels/slack-events.js.map +1 -1
- package/dist/agent/channels/slack-front.d.ts +1 -15
- package/dist/agent/channels/slack-front.d.ts.map +1 -1
- package/dist/agent/channels/slack-front.js +4 -62
- package/dist/agent/channels/slack-front.js.map +1 -1
- package/dist/agent/channels/slack-post-arm.d.ts +1 -8
- package/dist/agent/channels/slack-post-arm.d.ts.map +1 -1
- package/dist/agent/channels/slack-post-arm.js +1 -40
- package/dist/agent/channels/slack-post-arm.js.map +1 -1
- package/dist/agent/channels/slack-task-card.d.ts +38 -0
- package/dist/agent/channels/slack-task-card.d.ts.map +1 -0
- package/dist/agent/channels/slack-task-card.js +156 -0
- package/dist/agent/channels/slack-task-card.js.map +1 -0
- package/dist/agent/channels/slack.d.ts.map +1 -1
- package/dist/agent/channels/slack.js +516 -466
- package/dist/agent/channels/slack.js.map +1 -1
- package/dist/agent/contributions.d.ts +1 -1
- package/dist/agent/contributions.d.ts.map +1 -1
- package/dist/agent/contributions.js +1 -1
- package/dist/agent/contributions.js.map +1 -1
- package/dist/agent/docs-generated.js +1 -1
- package/dist/agent/docs-generated.js.map +1 -1
- package/dist/agent/ops.d.ts +5 -0
- package/dist/agent/ops.d.ts.map +1 -1
- package/dist/agent/ops.js +13 -2
- package/dist/agent/ops.js.map +1 -1
- package/dist/agent/setup/claim.d.ts.map +1 -1
- package/dist/agent/setup/claim.js +15 -2
- package/dist/agent/setup/claim.js.map +1 -1
- package/dist/agent/setup/eve-credentials.d.ts +9 -2
- package/dist/agent/setup/eve-credentials.d.ts.map +1 -1
- package/dist/agent/setup/eve-credentials.js +9 -1
- package/dist/agent/setup/eve-credentials.js.map +1 -1
- package/dist/agent/setup/page.d.ts +2 -0
- package/dist/agent/setup/page.d.ts.map +1 -1
- package/dist/agent/setup/page.js +71 -15
- package/dist/agent/setup/page.js.map +1 -1
- package/dist/agent/surface-parity.d.ts.map +1 -1
- package/dist/agent/surface-parity.js +0 -6
- package/dist/agent/surface-parity.js.map +1 -1
- package/package.json +10 -8
- package/agent/channels/slack-approval-card.ts +0 -275
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
// replay matrix is a suite (`webhook-reveal-test.ts`), for a token that has no row to replay onto.
|
|
56
56
|
// So: its own codec, its own key, and the two cannot verify each other's tokens in either direction
|
|
57
57
|
// because neither key is the other's and neither payload satisfies the other's shape check.
|
|
58
|
-
import { encryptedKvVault, } from "@open-everywhere/core/agent/adapter-api.js";
|
|
58
|
+
import { encryptedKvVault, pageBaseUrl, } from "@open-everywhere/core/agent/adapter-api.js";
|
|
59
59
|
import { createHmac, randomBytes, timingSafeEqual } from "node:crypto";
|
|
60
60
|
import { SLACK_COOKIE_KEY_REF, SLACK_SETUP_CODE_REF, readInstallRecord } from "./install-state.js";
|
|
61
61
|
import { slackSecretEnvPresent } from "./credentials.js";
|
|
@@ -190,6 +190,19 @@ let lockCache = null;
|
|
|
190
190
|
export function resetSlackSetupLockCache() {
|
|
191
191
|
lockCache = null;
|
|
192
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* The ABSOLUTE `/setup` URL the boot notice names (OPE-2397), from the same base URL the page writes
|
|
195
|
+
* into the Slack manifest. A bare "/setup" left the operator to guess the host — and on a deployment
|
|
196
|
+
* with several hosts (a custom domain, the production alias, a per-deployment URL) the guess decides
|
|
197
|
+
* whether the page is reachable at all. With no discoverable base, the line says how to set one.
|
|
198
|
+
*
|
|
199
|
+
* The path is a literal because `page.ts` imports this module; `slack-setup-test.ts` pins it to
|
|
200
|
+
* `SLACK_SETUP_PATH`.
|
|
201
|
+
*/
|
|
202
|
+
function setupPageUrl(deps) {
|
|
203
|
+
const base = pageBaseUrl(deps.env ?? process.env);
|
|
204
|
+
return base === undefined ? "/setup on this deployment's public URL (set OE_PUBLIC_BASE_URL to name it)" : `${base}/setup`;
|
|
205
|
+
}
|
|
193
206
|
/**
|
|
194
207
|
* The boot notice (core `boot/notices.ts`): log the setup code ONCE per process, while the page is
|
|
195
208
|
* open. Silent whenever {@link slackSetupOpen} is false — an install is recorded, OR this deployment
|
|
@@ -205,7 +218,7 @@ export async function announceSlackSetupCode(deps = {}) {
|
|
|
205
218
|
if (!(await slackSetupOpen(deps)))
|
|
206
219
|
return;
|
|
207
220
|
const code = await slackSetupCode(deps);
|
|
208
|
-
console.log(`[open-everywhere:slack-setup] Slack is not installed on this deployment. Open
|
|
221
|
+
console.log(`[open-everywhere:slack-setup] Slack is not installed on this deployment. Open ${setupPageUrl(deps)} and enter this one-time setup code: ${code}\n` +
|
|
209
222
|
`[open-everywhere:slack-setup] The code stops being logged once the Slack install completes, and /setup locks at that point.`);
|
|
210
223
|
}
|
|
211
224
|
function b64urlEncode(buf) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claim.js","sourceRoot":"","sources":["../../../agent/setup/claim.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,EAAE;AACF,kGAAkG;AAClG,6FAA6F;AAC7F,qGAAqG;AACrG,oGAAoG;AACpG,iGAAiG;AACjG,qEAAqE;AACrE,EAAE;AACF,mGAAmG;AACnG,qEAAqE;AACrE,EAAE;AACF,qGAAqG;AACrG,sGAAsG;AACtG,yFAAyF;AACzF,mGAAmG;AACnG,wFAAwF;AACxF,mGAAmG;AACnG,qGAAqG;AACrG,EAAE;AACF,+FAA+F;AAC/F,mGAAmG;AACnG,sGAAsG;AACtG,oGAAoG;AACpG,oGAAoG;AACpG,mGAAmG;AACnG,2DAA2D;AAC3D,EAAE;AACF,2DAA2D;AAC3D,gGAAgG;AAChG,qGAAqG;AACrG,oGAAoG;AACpG,iGAAiG;AACjG,sGAAsG;AACtG,qGAAqG;AACrG,iGAAiG;AACjG,gBAAgB;AAChB,6FAA6F;AAC7F,oGAAoG;AACpG,oGAAoG;AACpG,mGAAmG;AACnG,sEAAsE;AACtE,EAAE;AACF,qGAAqG;AACrG,iGAAiG;AACjG,oGAAoG;AACpG,wCAAwC;AACxC,EAAE;AACF,iGAAiG;AACjG,qGAAqG;AACrG,oGAAoG;AACpG,mGAAmG;AACnG,kGAAkG;AAClG,gGAAgG;AAChG,mGAAmG;AACnG,oGAAoG;AACpG,4FAA4F;AAE5F,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"claim.js","sourceRoot":"","sources":["../../../agent/setup/claim.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Eve's inbound verifier. THROWS to reject — eve catches, logs, and answers 401, so a thrown error
|
|
3
|
-
* here is the refusal.
|
|
3
|
+
* here is the refusal.
|
|
4
|
+
*
|
|
5
|
+
* 🔴 AN ACCEPT RETURNS `true`, NEVER NOTHING (OPE-2348). eve 0.71.0's Slack verifier
|
|
6
|
+
* (`@chat-adapter/slack` `verifySlackRequest`, inlined into eve's `slackChannel`) reads the verifier's
|
|
7
|
+
* RESULT: `if (!result) throw "Slack webhook verifier rejected the request"`. A string result
|
|
8
|
+
* replaces the body, and any other truthy value keeps the raw body. This function used to return
|
|
9
|
+
* `undefined` on success, so eve refused EVERY request OE forwarded to it — every native mention and
|
|
10
|
+
* every click on eve's own question buttons answered 401. `true` keeps eve on the raw body it read.
|
|
4
11
|
*
|
|
5
12
|
* The message names no secret and no header value: a verification failure is one of three things to
|
|
6
13
|
* an attacker (no secret configured, bad signature, stale timestamp) and telling them which is free
|
|
7
14
|
* information. The three are distinguished in the thrown text only to the extent an OPERATOR reading
|
|
8
15
|
* their own logs needs, which is why it names the CONDITION and never the input.
|
|
9
16
|
*/
|
|
10
|
-
export declare function verifySlackInboundForEve(request: Request, body: string): Promise<
|
|
17
|
+
export declare function verifySlackInboundForEve(request: Request, body: string): Promise<true>;
|
|
11
18
|
/**
|
|
12
19
|
* Eve's outbound bot-token provider. Throws eve's OWN message when none resolves, byte for byte, so a
|
|
13
20
|
* misconfigured deployment produces the error every runbook and every existing test already names.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eve-credentials.d.ts","sourceRoot":"","sources":["../../../agent/setup/eve-credentials.ts"],"names":[],"mappings":"AAiCA
|
|
1
|
+
{"version":3,"file":"eve-credentials.d.ts","sourceRoot":"","sources":["../../../agent/setup/eve-credentials.ts"],"names":[],"mappings":"AAiCA;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB5F;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAI3D;AAED;8EAC8E;AAC9E,eAAO,MAAM,qBAAqB;aAChC,eAAe;aACf,QAAQ;CACA,CAAC"}
|
|
@@ -30,7 +30,14 @@ import { slackBotToken, slackSigningSecret } from "./credentials.js";
|
|
|
30
30
|
const MAX_SKEW_SECONDS = 60 * 5;
|
|
31
31
|
/**
|
|
32
32
|
* Eve's inbound verifier. THROWS to reject — eve catches, logs, and answers 401, so a thrown error
|
|
33
|
-
* here is the refusal.
|
|
33
|
+
* here is the refusal.
|
|
34
|
+
*
|
|
35
|
+
* 🔴 AN ACCEPT RETURNS `true`, NEVER NOTHING (OPE-2348). eve 0.71.0's Slack verifier
|
|
36
|
+
* (`@chat-adapter/slack` `verifySlackRequest`, inlined into eve's `slackChannel`) reads the verifier's
|
|
37
|
+
* RESULT: `if (!result) throw "Slack webhook verifier rejected the request"`. A string result
|
|
38
|
+
* replaces the body, and any other truthy value keeps the raw body. This function used to return
|
|
39
|
+
* `undefined` on success, so eve refused EVERY request OE forwarded to it — every native mention and
|
|
40
|
+
* every click on eve's own question buttons answered 401. `true` keeps eve on the raw body it read.
|
|
34
41
|
*
|
|
35
42
|
* The message names no secret and no header value: a verification failure is one of three things to
|
|
36
43
|
* an attacker (no secret configured, bad signature, stale timestamp) and telling them which is free
|
|
@@ -53,6 +60,7 @@ export async function verifySlackInboundForEve(request, body) {
|
|
|
53
60
|
throw new Error("slack inbound: the signed timestamp is outside the accepted window.");
|
|
54
61
|
if (!slackSignatureMatches(secret, timestamp, body, signature))
|
|
55
62
|
throw new Error("slack inbound: the signature does not match.");
|
|
63
|
+
return true;
|
|
56
64
|
}
|
|
57
65
|
/**
|
|
58
66
|
* Eve's outbound bot-token provider. Throws eve's OWN message when none resolves, byte for byte, so a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eve-credentials.js","sourceRoot":"","sources":["../../../agent/setup/eve-credentials.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,EAAE;AACF,kGAAkG;AAClG,+FAA+F;AAC/F,gFAAgF;AAChF,EAAE;AACF,6FAA6F;AAC7F,oHAAoH;AACpH,EAAE;AACF,iGAAiG;AACjG,mGAAmG;AACnG,sGAAsG;AACtG,sGAAsG;AACtG,mGAAmG;AACnG,+EAA+E;AAC/E,iCAAiC;AACjC,EAAE;AACF,kGAAkG;AAClG,oGAAoG;AACpG,uFAAuF;AACvF,EAAE;AACF,oGAAoG;AACpG,+FAA+F;AAC/F,uGAAuG;AACvG,oFAAoF;AAEpF,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACvH,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAErE;6FAC6F;AAC7F,MAAM,gBAAgB,GAAG,EAAE,GAAG,CAAC,CAAC;AAEhC
|
|
1
|
+
{"version":3,"file":"eve-credentials.js","sourceRoot":"","sources":["../../../agent/setup/eve-credentials.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,EAAE;AACF,kGAAkG;AAClG,+FAA+F;AAC/F,gFAAgF;AAChF,EAAE;AACF,6FAA6F;AAC7F,oHAAoH;AACpH,EAAE;AACF,iGAAiG;AACjG,mGAAmG;AACnG,sGAAsG;AACtG,sGAAsG;AACtG,mGAAmG;AACnG,+EAA+E;AAC/E,iCAAiC;AACjC,EAAE;AACF,kGAAkG;AAClG,oGAAoG;AACpG,uFAAuF;AACvF,EAAE;AACF,oGAAoG;AACpG,+FAA+F;AAC/F,uGAAuG;AACvG,oFAAoF;AAEpF,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACvH,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAErE;6FAC6F;AAC7F,MAAM,gBAAgB,GAAG,EAAE,GAAG,CAAC,CAAC;AAEhC;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,OAAgB,EAAE,IAAY;IAC3E,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,mHAAmH;YACjH,0CAA0C,CAC7C,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC9D,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAE1G,mGAAmG;IACnG,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,gBAAgB;QAAE,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IAE9I,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAChI,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAC;IACpC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC5D,OAAO,KAAK,CAAC;AACf,CAAC;AAED;8EAC8E;AAC9E,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,eAAe,EAAE,wBAAwB;IACzC,QAAQ,EAAE,mBAAmB;CACrB,CAAC"}
|
|
@@ -12,6 +12,8 @@ export interface SlackSetupPageDeps extends SlackClaimDeps {
|
|
|
12
12
|
readonly createApp?: typeof createSlackApp;
|
|
13
13
|
readonly exchangeCode?: typeof exchangeSlackOauthCode;
|
|
14
14
|
readonly keyArmed?: () => boolean;
|
|
15
|
+
/** The login-wall probe's fetch (OPE-2397). Defaults to the global `fetch`. */
|
|
16
|
+
readonly probeFetch?: (url: string, init: RequestInit) => Promise<Response>;
|
|
15
17
|
}
|
|
16
18
|
/** Render whichever screen this deployment is up to. Every refusal is {@link notAvailable}. */
|
|
17
19
|
export declare function handleSlackSetupGet(req: Request, deps?: SlackSetupPageDeps): Promise<Response>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../../agent/setup/page.ts"],"names":[],"mappings":"AA4CA,OAAO,
|
|
1
|
+
{"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../../agent/setup/page.ts"],"names":[],"mappings":"AA4CA,OAAO,EAYL,KAAK,gBAAgB,EACtB,MAAM,4CAA4C,CAAC;AAIpD,OAAO,EAQL,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AAYpB,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAsB,MAAM,sBAAsB,CAAC;AAElG,6BAA6B;AAC7B,eAAO,MAAM,gBAAgB,WAAW,CAAC;AACzC,0GAA0G;AAC1G,eAAO,MAAM,yBAAyB,oBAAoB,CAAC;AAoC3D,sCAAsC;AACtC,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,cAAc,CAAC;IAC3C,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,sBAAsB,CAAC;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC;IAClC,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7E;AAmQD,+FAA+F;AAC/F,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoBxG;AAID,uCAAuC;AACvC,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAuFzG;AAID;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,QAAQ,CAAC,CA+H7G"}
|
package/dist/agent/setup/page.js
CHANGED
|
@@ -41,9 +41,10 @@
|
|
|
41
41
|
// is what keeps THIS page's own URL out of the `Referer` that click sends to slack.com — not, as an
|
|
42
42
|
// earlier draft of this comment said, what keeps the authorize URL itself secret; that URL goes to
|
|
43
43
|
// Slack by design.
|
|
44
|
-
import { BUTTON_STYLE, CODE_BLOCK_STYLE, appendAudit, credentialKeyArmed, deploymentOrg, encryptedKvVault, escapeHtml, pageBaseUrl, securePageResponse, } from "@open-everywhere/core/agent/adapter-api.js";
|
|
44
|
+
import { BUTTON_STYLE, CODE_BLOCK_STYLE, agentDisplayName, appendAudit, credentialKeyArmed, deploymentOrg, encryptedKvVault, escapeHtml, pageBaseUrl, securePageResponse, } from "@open-everywhere/core/agent/adapter-api.js";
|
|
45
45
|
import { randomBytes, timingSafeEqual } from "node:crypto";
|
|
46
|
-
import { SLACK_DEPLOY_HOST_PLACEHOLDER, slackAppManifestTemplate, slackAppNameProblem } from "../app-manifest.js";
|
|
46
|
+
import { SLACK_DEPLOY_HOST_PLACEHOLDER, slackAppManifestTemplate, slackAppNameProblem, slackManifestAppName } from "../app-manifest.js";
|
|
47
|
+
import { slackManifestOptionsFromSettings } from "../ops.js";
|
|
47
48
|
import { SETUP_COOKIE_NAME, mintSetupCookie, setupCodeMatches, setupCookieFrom, setupCookieHeader, slackSetupOpen, verifySetupCookie, } from "./claim.js";
|
|
48
49
|
import { SLACK_BOT_TOKEN_REF, SLACK_CLIENT_SECRET_REF, SLACK_COOKIE_KEY_REF, SLACK_PENDING_REF, SLACK_PENDING_SIGNING_SECRET_REF, SLACK_SETUP_CODE_REF, SLACK_SIGNING_SECRET_REF, recordSlackInstall, } from "./install-state.js";
|
|
49
50
|
import { createSlackApp, exchangeSlackOauthCode, SlackSetupApiError } from "./slack-api-setup.js";
|
|
@@ -95,9 +96,10 @@ function slackRefused(code) {
|
|
|
95
96
|
function baseUrl(deps) {
|
|
96
97
|
return pageBaseUrl(deps.env ?? process.env);
|
|
97
98
|
}
|
|
98
|
-
/** The manifest, with this deployment's host substituted for the shipped placeholder.
|
|
99
|
+
/** The manifest, with this deployment's host substituted for the shipped placeholder. Rendered from
|
|
100
|
+
* the settings (OPE-2334): the form's explicit name wins, else the configured `identity.name`. */
|
|
99
101
|
function manifestForHost(host, appName) {
|
|
100
|
-
const template = slackAppManifestTemplate(appName ? { appName } : {});
|
|
102
|
+
const template = slackAppManifestTemplate(slackManifestOptionsFromSettings(appName ? { appName } : {}));
|
|
101
103
|
// The placeholder appears in four request URLs; a global replace is the substitution.
|
|
102
104
|
return template.split(SLACK_DEPLOY_HOST_PLACEHOLDER).join(host);
|
|
103
105
|
}
|
|
@@ -105,10 +107,62 @@ function manifestForHost(host, appName) {
|
|
|
105
107
|
function manifestHost(base) {
|
|
106
108
|
return base.replace(/^https?:\/\//i, "").replace(/\/+$/, "");
|
|
107
109
|
}
|
|
110
|
+
// --- the login-wall probe (OPE-2397) ----------------------------------------------------------------
|
|
111
|
+
//
|
|
112
|
+
// THE FAILURE IT CATCHES. The base URL can name a host that sits behind a login: Vercel's deployment
|
|
113
|
+
// protection covers the generated hosts by default, and `VERCEL_URL` is the last rung of the
|
|
114
|
+
// precedence. The operator passes that wall in a browser with a session cookie, so `/setup` renders
|
|
115
|
+
// and the run completes. Slack sends its requests with no cookie, so the app it creates never
|
|
116
|
+
// delivers an event, and nothing on the page says why.
|
|
117
|
+
//
|
|
118
|
+
// THE PROBE. One GET to this deployment's own `/setup` at the base URL, with no cookie and no
|
|
119
|
+
// redirect follow. `/setup` is the path to ask because it is mounted whenever this code runs, and it
|
|
120
|
+
// answers 200 to a cookie-less GET while setup is open. The status route is the wrong target: the
|
|
121
|
+
// deployment docs tell an operator to block it at the edge, and that block answers 403 too.
|
|
122
|
+
//
|
|
123
|
+
// WHAT COUNTS. A 401, a 403 or a 3xx is a login wall or a host Slack cannot use (Slack does not
|
|
124
|
+
// follow a redirect on a request URL). Anything else, a network failure or a timeout included, adds
|
|
125
|
+
// no warning: a deployment that cannot reach its own public host from inside is not proof of a wall,
|
|
126
|
+
// and a false warning would send the operator to change a correct URL.
|
|
127
|
+
/** How long the probe waits. Screen 2 renders after it, so it must stay short. */
|
|
128
|
+
const PROBE_TIMEOUT_MS = 3_000;
|
|
129
|
+
/** The probe's verdict: the HTTP status that marks a login wall, or `undefined` for no warning. */
|
|
130
|
+
async function loginWallStatus(base, deps) {
|
|
131
|
+
let res;
|
|
132
|
+
try {
|
|
133
|
+
res = await (deps.probeFetch ?? fetch)(`${base}${SLACK_SETUP_PATH}`, {
|
|
134
|
+
method: "GET",
|
|
135
|
+
redirect: "manual",
|
|
136
|
+
signal: AbortSignal.timeout(PROBE_TIMEOUT_MS),
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
catch {
|
|
140
|
+
return undefined;
|
|
141
|
+
}
|
|
142
|
+
// Drain the body: an unread body holds the connection open.
|
|
143
|
+
await res.body?.cancel().catch(() => undefined);
|
|
144
|
+
const s = res.status;
|
|
145
|
+
return s === 401 || s === 403 || (s >= 300 && s < 400) ? s : undefined;
|
|
146
|
+
}
|
|
147
|
+
/** The screen-2 warning for a login wall. Names the host and the variable that fixes it. */
|
|
148
|
+
function loginWallWarning(host, status) {
|
|
149
|
+
return (`<p style="color:#b91c1c"><strong>Slack cannot reach <code>${escapeHtml(host)}</code>.</strong> This deployment ` +
|
|
150
|
+
`asked its own <code>${escapeHtml(SLACK_SETUP_PATH)}</code> at that host with no login, and the host answered ` +
|
|
151
|
+
`<code>${status}</code>. That is the answer of a login wall, such as Vercel deployment protection, or of a redirect. ` +
|
|
152
|
+
`Slack sends its requests with no login and follows no redirect, so an app created here would never receive an event.</p>` +
|
|
153
|
+
`<p>Set <code>OE_PUBLIC_BASE_URL</code> to a public host of this deployment (for example its custom domain) and ` +
|
|
154
|
+
`redeploy, or remove the protection from this host. Then reload this page.</p>`);
|
|
155
|
+
}
|
|
156
|
+
/** Screen 2, with the probe's warning when the host is behind a login. */
|
|
157
|
+
async function createScreenFor(base, deps) {
|
|
158
|
+
const host = manifestHost(base);
|
|
159
|
+
const wall = await loginWallStatus(base, deps);
|
|
160
|
+
return createScreen(host, wall === undefined ? "" : loginWallWarning(host, wall));
|
|
161
|
+
}
|
|
108
162
|
// --- the four screens -----------------------------------------------------------------------------
|
|
109
163
|
/** Screen 1 — ask for the setup code. `retry` re-renders after a wrong code, with an EMPTY field. */
|
|
110
164
|
function claimScreen(retry) {
|
|
111
|
-
return securePageResponse(200,
|
|
165
|
+
return securePageResponse(200, `Set up ${agentDisplayName()}`, (retry ? `<p style="color:#b91c1c">That code did not match. Check the deployment's logs and try again.</p>` : "") +
|
|
112
166
|
`<p>This deployment logged a one-time setup code when it started. Find it in the deployment's logs ` +
|
|
113
167
|
`(<code>vercel logs</code>, <code>docker logs</code>) and paste it here.</p>` +
|
|
114
168
|
`<form method="post" action="${escapeHtml(SLACK_SETUP_PATH)}">` +
|
|
@@ -118,25 +172,27 @@ function claimScreen(retry) {
|
|
|
118
172
|
`<button type="submit" style="${BUTTON_STYLE}">Continue</button>` +
|
|
119
173
|
`</form>`);
|
|
120
174
|
}
|
|
121
|
-
/** Screen 2 — ask for the app configuration token. */
|
|
122
|
-
function createScreen(host) {
|
|
123
|
-
return securePageResponse(200, "Create the Slack app",
|
|
175
|
+
/** Screen 2 — ask for the app configuration token. `warning` is the login-wall probe's HTML, or "". */
|
|
176
|
+
function createScreen(host, warning) {
|
|
177
|
+
return securePageResponse(200, "Create the Slack app", warning +
|
|
178
|
+
`<p>Open <code>api.slack.com/apps</code>, scroll to <strong>Your App Configuration Tokens</strong>, ` +
|
|
124
179
|
`and generate one for the workspace that will host the agent. Paste it below. It needs the ` +
|
|
125
180
|
`<code>app_configurations:write</code> scope and lasts about 12 hours.</p>` +
|
|
126
|
-
`<p>
|
|
181
|
+
`<p>This page will create the Slack app for <code>${escapeHtml(host)}</code>: every request URL in the ` +
|
|
182
|
+
`app's manifest names that host, so Slack must be able to reach it with no login. It keeps the app's ` +
|
|
127
183
|
`credentials in this deployment's own encrypted store. The configuration token is used once and never stored.</p>` +
|
|
128
184
|
`<form method="post" action="${escapeHtml(SLACK_SETUP_PATH)}">` +
|
|
129
185
|
`<input type="hidden" name="${FIELD_ACTION}" value="create">` +
|
|
130
186
|
`<p><input name="${FIELD_CONFIG_TOKEN}" type="password" autocomplete="off" required style="width:100%;padding:.5rem;font:inherit" ` +
|
|
131
187
|
`placeholder="xoxe.xoxp-… (app configuration token)"></p>` +
|
|
132
188
|
`<p><label>App name (optional)<br><input name="${FIELD_APP_NAME}" type="text" autocomplete="off" ` +
|
|
133
|
-
`style="width:100%;padding:.5rem;font:inherit" placeholder="
|
|
189
|
+
`style="width:100%;padding:.5rem;font:inherit" placeholder="${escapeHtml(slackManifestAppName(slackManifestOptionsFromSettings()))}"></label></p>` +
|
|
134
190
|
`<button type="submit" style="${BUTTON_STYLE}">Create the Slack app</button>` +
|
|
135
191
|
`</form>`);
|
|
136
192
|
}
|
|
137
193
|
/** Screen 3 — the one link that installs the app. */
|
|
138
194
|
function installScreen(authorizeUrl) {
|
|
139
|
-
return securePageResponse(200, "Install to your workspace", `<p>The Slack app exists. Installing it is the step that gives
|
|
195
|
+
return securePageResponse(200, "Install to your workspace", `<p>The Slack app exists. Installing it is the step that gives ${escapeHtml(agentDisplayName())} a bot token for ` +
|
|
140
196
|
`your workspace, and it has to be done by someone who can approve an app there.</p>` +
|
|
141
197
|
`<p><a href="${escapeHtml(authorizeUrl)}" style="${BUTTON_STYLE};display:inline-block;text-decoration:none">` +
|
|
142
198
|
`Install to Slack</a></p>` +
|
|
@@ -146,7 +202,7 @@ function installScreen(authorizeUrl) {
|
|
|
146
202
|
function doneScreen(state) {
|
|
147
203
|
const surfaceLine = ` defineSurface({ key: "slack/${state.teamId}", trust: "internal" }),`;
|
|
148
204
|
const adminLine = ` admins: ["slack/${state.teamId}/${state.installerUserId}"],`;
|
|
149
|
-
return securePageResponse(200, "Slack is installed", `<p
|
|
205
|
+
return securePageResponse(200, "Slack is installed", `<p>${escapeHtml(agentDisplayName())} is installed in <strong>${escapeHtml(state.teamName ?? state.teamId)}</strong>. ` +
|
|
150
206
|
`Its credentials are in this deployment's encrypted store; nothing else needs setting.</p>` +
|
|
151
207
|
`<p>Two config edits are left. They are not secrets — they say which workspace this deployment ` +
|
|
152
208
|
`trusts, and who administers it — so they belong in your git repo and deploy with it.</p>` +
|
|
@@ -233,14 +289,14 @@ export async function handleSlackSetupGet(req, deps = {}) {
|
|
|
233
289
|
return claimScreen(false);
|
|
234
290
|
const base = baseUrl(deps);
|
|
235
291
|
if (base === undefined) {
|
|
236
|
-
return securePageResponse(500, "This deployment does not know its own URL", `<p>
|
|
292
|
+
return securePageResponse(500, "This deployment does not know its own URL", `<p>This deployment could not work out the public URL to put in the Slack app, so it will not ` +
|
|
237
293
|
`create one that points at the wrong place.</p>` +
|
|
238
294
|
`<p>Set <code>OE_PUBLIC_BASE_URL</code> to this deployment's public URL and redeploy.</p>`);
|
|
239
295
|
}
|
|
240
296
|
const pending = await readPending(deps);
|
|
241
297
|
if (pending)
|
|
242
298
|
return installScreen(authorizeUrlFor(pending, base, manifestBotScopes()));
|
|
243
|
-
return
|
|
299
|
+
return createScreenFor(base, deps);
|
|
244
300
|
}
|
|
245
301
|
// --- POST /setup ----------------------------------------------------------------------------------
|
|
246
302
|
/** Screen 1 and screen 2's submits. */
|
|
@@ -283,7 +339,7 @@ export async function handleSlackSetupPost(req, deps = {}) {
|
|
|
283
339
|
return notAvailable();
|
|
284
340
|
const configToken = (form.get(FIELD_CONFIG_TOKEN) ?? "").trim();
|
|
285
341
|
if (configToken.length === 0)
|
|
286
|
-
return
|
|
342
|
+
return createScreenFor(base, deps);
|
|
287
343
|
const rawName = (form.get(FIELD_APP_NAME) ?? "").trim();
|
|
288
344
|
if (rawName.length > 0) {
|
|
289
345
|
const problem = slackAppNameProblem(rawName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../agent/setup/page.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../agent/setup/page.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface-parity.d.ts","sourceRoot":"","sources":["../../agent/surface-parity.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AAE3F,eAAO,MAAM,oBAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"surface-parity.d.ts","sourceRoot":"","sources":["../../agent/surface-parity.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AAE3F,eAAO,MAAM,oBAAoB,EAAE,wBAkFlC,CAAC"}
|
|
@@ -11,12 +11,6 @@ export const SLACK_SURFACE_PARITY = {
|
|
|
11
11
|
"capability-manifest": "supported",
|
|
12
12
|
"post-arm": "supported",
|
|
13
13
|
"wake-origin-codec": "supported",
|
|
14
|
-
// The arm renders the buttons (`slack-post-arm.ts`), the front routes the tap back
|
|
15
|
-
// (`slack-front.ts` classifies `oe_input:`, `slack-approval-card.ts` settles it), and the settle
|
|
16
|
-
// DELIVERS through core's `approvalCardRespondVia` — all three halves, as the row requires. The
|
|
17
|
-
// third is not a formality: this front bound its own `args.from(bareToken)` until OPE-1863, and
|
|
18
|
-
// that address is channel-local, so every tap threw and the approval stayed parked.
|
|
19
|
-
"unified-action-plane": "supported",
|
|
20
14
|
// `replyAnchorTs` is placement only and sits outside `threadRef`, so two top-level wakes in one
|
|
21
15
|
// channel are ONE conversation carrying two different anchors. Both members are implemented.
|
|
22
16
|
"origin-placement-carry": "supported",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface-parity.js","sourceRoot":"","sources":["../../agent/surface-parity.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,gGAAgG;AAChG,iFAAiF;AACjF,EAAE;AACF,+FAA+F;AAC/F,iGAAiG;AACjG,wEAAwE;AAIxE,MAAM,CAAC,MAAM,oBAAoB,GAA6B;IAC5D,gGAAgG;IAChG,iBAAiB,EAAE,WAAW;IAC9B,qBAAqB,EAAE,WAAW;IAClC,UAAU,EAAE,WAAW;IACvB,mBAAmB,EAAE,WAAW;IAChC,
|
|
1
|
+
{"version":3,"file":"surface-parity.js","sourceRoot":"","sources":["../../agent/surface-parity.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,gGAAgG;AAChG,iFAAiF;AACjF,EAAE;AACF,+FAA+F;AAC/F,iGAAiG;AACjG,wEAAwE;AAIxE,MAAM,CAAC,MAAM,oBAAoB,GAA6B;IAC5D,gGAAgG;IAChG,iBAAiB,EAAE,WAAW;IAC9B,qBAAqB,EAAE,WAAW;IAClC,UAAU,EAAE,WAAW;IACvB,mBAAmB,EAAE,WAAW;IAChC,gGAAgG;IAChG,6FAA6F;IAC7F,wBAAwB,EAAE,WAAW;IACrC,cAAc,EAAE,WAAW;IAC3B,0BAA0B,EAAE,WAAW;IACvC,8FAA8F;IAC9F,+FAA+F;IAC/F,8FAA8F;IAC9F,8DAA8D;IAC9D,eAAe,EAAE,EAAE,SAAS,EAAE,kEAAkE,EAAE;IAClG,yBAAyB,EAAE,WAAW;IACtC,kGAAkG;IAClG,gGAAgG;IAChG,kGAAkG;IAClG,oDAAoD;IACpD,uBAAuB,EAAE,EAAE,WAAW,EAAE,2GAA2G,EAAE;IACrJ,kGAAkG;IAClG,mGAAmG;IACnG,oFAAoF;IACpF,mGAAmG;IACnG,kGAAkG;IAClG,wDAAwD;IACxD,sBAAsB,EAAE,WAAW;IACnC,kGAAkG;IAClG,6FAA6F;IAC7F,2FAA2F;IAC3F,eAAe,EAAE,WAAW;IAC5B,kGAAkG;IAClG,kGAAkG;IAClG,mGAAmG;IACnG,wBAAwB,EAAE,WAAW;IACrC,8FAA8F;IAC9F,8EAA8E;IAC9E,kGAAkG;IAClG,8FAA8F;IAC9F,eAAe,EAAE,WAAW;IAC5B,gGAAgG;IAChG,+FAA+F;IAC/F,uCAAuC;IACvC,mBAAmB,EAAE,WAAW;IAEhC,gGAAgG;IAChG,eAAe,EAAE,WAAW;IAC5B,aAAa,EAAE,WAAW;IAC1B,mBAAmB,EAAE,WAAW;IAChC,iGAAiG;IACjG,iGAAiG;IACjG,8FAA8F;IAC9F,sEAAsE;IACtE,mBAAmB,EAAE,WAAW;IAChC,OAAO,EAAE,WAAW;IACpB,KAAK,EAAE,WAAW;IAClB,EAAE,EAAE,WAAW;IACf,IAAI,EAAE,WAAW;IAEjB,gGAAgG;IAChG,KAAK,EAAE,WAAW;IAClB,UAAU,EAAE,WAAW;IACvB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,WAAW;IACrB,YAAY,EAAE,WAAW;IACzB,WAAW,EAAE,WAAW;IACxB,0FAA0F;IAC1F,8FAA8F;IAC9F,4FAA4F;IAC5F,MAAM,EAAE,EAAE,WAAW,EAAE,4EAA4E,EAAE;IACrG,YAAY,EAAE,WAAW;IACzB,SAAS,EAAE,WAAW;IACtB,eAAe,EAAE,WAAW;IAC5B,IAAI,EAAE,EAAE,SAAS,EAAE,yCAAyC,EAAE;IAC9D,cAAc,EAAE,WAAW;IAC3B,eAAe,EAAE,WAAW;IAC5B,iGAAiG;IACjG,kFAAkF;IAClF,UAAU,EAAE,EAAE,SAAS,EAAE,yEAAyE,EAAE;IACpG,SAAS,EAAE,WAAW;CACvB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@open-everywhere/provider-slack",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Open Everywhere Slack provider — Slack channel and DM surfaces, identity mapping, approval cards and slash commands.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"agent",
|
|
@@ -44,10 +44,6 @@
|
|
|
44
44
|
"types": "./dist/agent/app-manifest.d.ts",
|
|
45
45
|
"default": "./dist/agent/app-manifest.js"
|
|
46
46
|
},
|
|
47
|
-
"./agent/channels/slack-approval-card.js": {
|
|
48
|
-
"types": "./dist/agent/channels/slack-approval-card.d.ts",
|
|
49
|
-
"default": "./dist/agent/channels/slack-approval-card.js"
|
|
50
|
-
},
|
|
51
47
|
"./agent/channels/slack-attachments.js": {
|
|
52
48
|
"types": "./dist/agent/channels/slack-attachments.d.ts",
|
|
53
49
|
"default": "./dist/agent/channels/slack-attachments.js"
|
|
@@ -112,6 +108,10 @@
|
|
|
112
108
|
"types": "./dist/agent/channels/slack-spend-gate.d.ts",
|
|
113
109
|
"default": "./dist/agent/channels/slack-spend-gate.js"
|
|
114
110
|
},
|
|
111
|
+
"./agent/channels/slack-task-card.js": {
|
|
112
|
+
"types": "./dist/agent/channels/slack-task-card.d.ts",
|
|
113
|
+
"default": "./dist/agent/channels/slack-task-card.js"
|
|
114
|
+
},
|
|
115
115
|
"./agent/channels/slack-tenant-fence.js": {
|
|
116
116
|
"types": "./dist/agent/channels/slack-tenant-fence.d.ts",
|
|
117
117
|
"default": "./dist/agent/channels/slack-tenant-fence.js"
|
|
@@ -214,13 +214,15 @@
|
|
|
214
214
|
"test:slack-contextline-trust": "NODE_NO_WARNINGS=1 tsx scripts/slack-contextline-trust-test.ts",
|
|
215
215
|
"test:slack-wake-trust": "NODE_NO_WARNINGS=1 tsx scripts/slack-wake-trust-test.ts",
|
|
216
216
|
"test:slack-dm-seat": "NODE_NO_WARNINGS=1 tsx scripts/slack-dm-seat-test.ts",
|
|
217
|
+
"test:slack-reasoning-fence": "NODE_NO_WARNINGS=1 tsx scripts/slack-reasoning-fence-test.ts",
|
|
217
218
|
"test:slack-dm-divert": "NODE_NO_WARNINGS=1 tsx scripts/slack-dm-divert-test.ts",
|
|
218
219
|
"test:slack-shortcut": "NODE_NO_WARNINGS=1 tsx scripts/slack-shortcut-test.ts",
|
|
219
220
|
"test:slack-enterprise-rung": "NODE_NO_WARNINGS=1 tsx scripts/slack-enterprise-rung-test.ts",
|
|
220
221
|
"test:slack-native-wake-heal": "NODE_NO_WARNINGS=1 tsx scripts/slack-native-wake-heal-test.ts",
|
|
221
222
|
"test:slack-attachments": "NODE_NO_WARNINGS=1 tsx scripts/slack-attachments-test.ts",
|
|
223
|
+
"test:slack-governance-roster": "NODE_NO_WARNINGS=1 tsx scripts/slack-governance-roster-test.ts",
|
|
222
224
|
"test:slack-input-response": "NODE_NO_WARNINGS=1 tsx scripts/slack-input-response-test.ts",
|
|
223
|
-
"test:slack-
|
|
225
|
+
"test:slack-task-card": "NODE_NO_WARNINGS=1 tsx scripts/slack-task-card-test.ts",
|
|
224
226
|
"test:slack-mrkdwn": "NODE_NO_WARNINGS=1 tsx scripts/slack-mrkdwn-test.ts",
|
|
225
227
|
"test:slack-rate-limit": "NODE_NO_WARNINGS=1 tsx scripts/slack-rate-limit-test.ts",
|
|
226
228
|
"test:slack-web-api-seam": "NODE_NO_WARNINGS=1 tsx scripts/slack-web-api-seam-test.ts",
|
|
@@ -229,12 +231,12 @@
|
|
|
229
231
|
"test:slack-surface-evidence": "NODE_NO_WARNINGS=1 tsx scripts/slack-surface-evidence-test.ts"
|
|
230
232
|
},
|
|
231
233
|
"dependencies": {
|
|
232
|
-
"@open-everywhere/core": "0.
|
|
234
|
+
"@open-everywhere/core": "0.3.0",
|
|
233
235
|
"undici": "^7.28.0",
|
|
234
236
|
"zod": "4.5.4"
|
|
235
237
|
},
|
|
236
238
|
"peerDependencies": {
|
|
237
|
-
"eve": "0.
|
|
239
|
+
"eve": "0.71.0"
|
|
238
240
|
},
|
|
239
241
|
"devDependencies": {
|
|
240
242
|
"@types/node": "latest",
|