@walkeros/server-destination-slack 4.1.0-next-1778668930820 → 4.1.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 ADDED
@@ -0,0 +1,146 @@
1
+ # @walkeros/server-destination-slack
2
+
3
+ ## 4.1.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [e155ff8]
8
+ - Updated dependencies [e800974]
9
+ - Updated dependencies [e155ff8]
10
+ - Updated dependencies [1a8f2d7]
11
+ - Updated dependencies [1a8f2d7]
12
+ - Updated dependencies [b276173]
13
+ - Updated dependencies [dd9f5ad]
14
+ - Updated dependencies [c60ef35]
15
+ - Updated dependencies [adeebea]
16
+ - Updated dependencies [13aaeaa]
17
+ - Updated dependencies [e800974]
18
+ - Updated dependencies [adeebea]
19
+ - Updated dependencies [e800974]
20
+ - Updated dependencies [e800974]
21
+ - Updated dependencies [058f7ed]
22
+ - Updated dependencies [28a8ac2]
23
+ - Updated dependencies [fd6076e]
24
+ - @walkeros/core@4.1.0
25
+ - @walkeros/server-core@4.1.0
26
+
27
+ ## 4.0.2
28
+
29
+ ### Patch Changes
30
+
31
+ - Updated dependencies [a6a0ea7]
32
+ - @walkeros/core@4.0.2
33
+ - @walkeros/server-core@4.0.2
34
+
35
+ ## 4.0.1
36
+
37
+ ### Patch Changes
38
+
39
+ - Updated dependencies [381dfe7]
40
+ - Updated dependencies [1524275]
41
+ - Updated dependencies [03d7055]
42
+ - @walkeros/core@4.0.1
43
+ - @walkeros/server-core@4.0.1
44
+
45
+ ## 4.0.0
46
+
47
+ ### Major Changes
48
+
49
+ - 93ea9c4: Event model v4: breaking changes to the `Event`, `Source`, and
50
+ `Entity` shapes.
51
+ - `event.id` is now a W3C span_id (16 lowercase hex chars), generated by the
52
+ collector. Reference: W3C Trace Context (W3C Recommendation, January 2020).
53
+ - `event.version`, `event.group`, `event.count` are removed.
54
+ - `source.type` is now the source kind (e.g. `browser`, `gtag`, `mcp`, `cli`).
55
+ New `source.platform` holds the runtime (`web` | `server` | `app` | ...).
56
+ - `source.id` and `source.previous_id` are removed.
57
+ - Browser source now sets `source.url` and `source.referrer`.
58
+ - MCP source sets `source.tool` per emission. CLI source sets
59
+ `source.command`.
60
+ - `Entity.nested` and `Entity.context` are now optional. Root `event.nested`
61
+ and `event.context` remain required.
62
+ - Each source self-registers via TypeScript module augmentation of `SourceMap`
63
+ in `@walkeros/core`.
64
+ - App-side coordination (`/workspaces/developer/app`) is a follow-up plan, not
65
+ part of this release. Telemetry from v4 CLI/MCP will not validate against
66
+ the existing app schema until that follow-up ships.
67
+ - `Mapping.Rule.skip` is renamed to `Mapping.Rule.silent`. Customer flow.json
68
+ configs using `skip: true` in mapping rules must rename to `silent: true`.
69
+ Hard cut: no legacy alias, the field is gone.
70
+
71
+ ### Patch Changes
72
+
73
+ - Updated dependencies [93ea9c4]
74
+ - Updated dependencies [465775c]
75
+ - Updated dependencies [942a7fe]
76
+ - Updated dependencies [cfc7469]
77
+ - Updated dependencies [8e06b1f]
78
+ - Updated dependencies [3d50dd6]
79
+ - Updated dependencies [1ef33d9]
80
+ - @walkeros/core@4.0.0
81
+ - @walkeros/server-core@4.0.0
82
+
83
+ ## 3.4.2
84
+
85
+ ### Patch Changes
86
+
87
+ - @walkeros/core@3.4.2
88
+ - @walkeros/server-core@3.4.2
89
+
90
+ ## 3.4.1
91
+
92
+ ### Patch Changes
93
+
94
+ - Updated dependencies [12adf24]
95
+ - Updated dependencies [75aa26b]
96
+ - @walkeros/core@3.4.1
97
+ - @walkeros/server-core@3.4.1
98
+
99
+ ## 3.4.0
100
+
101
+ ### Minor Changes
102
+
103
+ - 724f97e: Migrate every step example in every walkerOS package to the
104
+ standardized `[callable, ...args][]` shape introduced in `@walkeros/core`.
105
+ Every step example's `out` is now an array of effect tuples whose first
106
+ element is the callable's public SDK name (`'gtag'`, `'analytics.track'`,
107
+ `'fbq'`, `'dataLayer.push'`, `'sendServer'`, `'fetch'`, `'trackClient.track'`,
108
+ `'amplitude.track'`, `'fs.writeFile'`, `'producer.send'`, `'client.xadd'`,
109
+ `'client.send'`, `'dataset.table.insert'`, etc.). Source examples use `'elb'`
110
+ as the callable; transformer examples use the reserved `'return'` keyword;
111
+ store examples use store-operation callables (`'get'`, `'set'`). Tests capture
112
+ real calls on each component's spy and assert against `example.out` directly —
113
+ the hardcoded `PACKAGE_CALLS` registry in the app is no longer consulted
114
+ (emptied; plan #3 removes it structurally).
115
+
116
+ ### Patch Changes
117
+
118
+ - Updated dependencies [74940cc]
119
+ - Updated dependencies [525f5d9]
120
+ - @walkeros/core@3.4.0
121
+ - @walkeros/server-core@3.4.0
122
+
123
+ ## 3.3.1
124
+
125
+ ### Patch Changes
126
+
127
+ - @walkeros/server-core@3.3.1
128
+ - @walkeros/core@3.3.1
129
+
130
+ ## 3.3.0
131
+
132
+ ### Minor Changes
133
+
134
+ - dda9ed9: Add Slack server destination with dual-mode support (Incoming
135
+ Webhooks + Web API), channel routing, DM support, threading, ephemeral
136
+ messages, and Block Kit formatting.
137
+
138
+ ### Patch Changes
139
+
140
+ - Updated dependencies [2849acb]
141
+ - Updated dependencies [08c365a]
142
+ - Updated dependencies [08c365a]
143
+ - Updated dependencies [08c365a]
144
+ - Updated dependencies [08c365a]
145
+ - @walkeros/core@3.3.0
146
+ - @walkeros/server-core@3.3.0
package/README.md CHANGED
@@ -1,9 +1,18 @@
1
+ <p align="left">
2
+ <a href="https://www.walkeros.io">
3
+ <img alt="walkerOS" title="walkerOS" src="https://www.walkeros.io/img/walkerOS_logo.svg" width="256px"/>
4
+ </a>
5
+ </p>
6
+
1
7
  # @walkeros/server-destination-slack
2
8
 
3
- Server-side Slack destination for
4
- [walkerOS](https://github.com/elbwalker/walkerOS). Posts events to Slack as
5
- formatted notifications via either an Incoming Webhook or the official
6
- `@slack/web-api` SDK.
9
+ Send walkerOS events to Slack as formatted messages via Incoming Webhooks or the
10
+ Web API, with multi-channel routing, threading, DMs, and Block Kit support.
11
+
12
+ [Documentation](https://www.walkeros.io/docs/destinations/server/slack) &bull;
13
+ [NPM Package](https://www.npmjs.com/package/@walkeros/server-destination-slack)
14
+ &bull;
15
+ [Source Code](https://github.com/elbwalker/walkerOS/tree/main/packages/server/destinations/slack)
7
16
 
8
17
  ## Installation
9
18
 
@@ -11,70 +20,18 @@ formatted notifications via either an Incoming Webhook or the official
11
20
  npm install @walkeros/server-destination-slack
12
21
  ```
13
22
 
14
- ## Modes
15
-
16
- The destination has two modes, selected by which auth setting you provide:
17
-
18
- | Setting | Mode | Capabilities |
19
- | ------------ | ------- | ----------------------------------------------------------- |
20
- | `webhookUrl` | Webhook | Single channel, simple text + Block Kit |
21
- | `token` | Web API | Multi-channel, threading, DMs, ephemeral, structured errors |
22
-
23
- ## Quick Start (Web API mode)
24
-
25
- ```json
26
- {
27
- "destinations": {
28
- "slack": {
29
- "package": "@walkeros/server-destination-slack",
30
- "config": {
31
- "settings": {
32
- "token": "$SLACK_BOT_TOKEN",
33
- "channel": "#alerts"
34
- },
35
- "mapping": {
36
- "order": {
37
- "complete": {
38
- "settings": {
39
- "channel": "#sales",
40
- "text": ":moneybag: New order: ${data.id} - ${data.total} ${data.currency}"
41
- }
42
- }
43
- },
44
- "error": {
45
- "*": {
46
- "settings": {
47
- "channel": "#engineering-alerts",
48
- "text": ":rotating_light: ${data.severity}: ${data.message}"
49
- }
50
- }
51
- }
52
- }
53
- }
54
- }
55
- }
56
- }
57
- ```
58
-
59
- ## Quick Start (Webhook mode)
23
+ ## Quick start
60
24
 
61
25
  ```json
62
26
  {
63
- "destinations": {
64
- "slack-deploys": {
65
- "package": "@walkeros/server-destination-slack",
66
- "config": {
67
- "settings": {
68
- "webhookUrl": "$SLACK_WEBHOOK_URL"
69
- },
70
- "mapping": {
71
- "deploy": {
72
- "complete": {
73
- "settings": {
74
- "text": ":rocket: Deployed ${data.version} to ${data.environment}"
75
- }
76
- }
77
- }
27
+ "version": 4,
28
+ "flows": {
29
+ "default": {
30
+ "config": { "platform": "server" },
31
+ "destinations": {
32
+ "slack": {
33
+ "package": "@walkeros/server-destination-slack",
34
+ "config": {}
78
35
  }
79
36
  }
80
37
  }
@@ -82,51 +39,18 @@ The destination has two modes, selected by which auth setting you provide:
82
39
  }
83
40
  ```
84
41
 
85
- ## Settings
86
-
87
- | Setting | Type | Required | Default | Description |
88
- | --------------- | ------- | -------- | ----------- | ----------------------------------------------------- |
89
- | `token` | string | One of | -- | Bot token (`xoxb-...`). Enables Web API mode |
90
- | `webhookUrl` | string | One of | -- | Incoming Webhook URL. Enables webhook mode |
91
- | `channel` | string | Web API | -- | Default channel ID or name |
92
- | `text` | string | No | -- | Default text template (`${data.field}` interpolation) |
93
- | `blocks` | array | No | -- | Default Block Kit blocks |
94
- | `includeHeader` | boolean | No | `true` | Auto-add event-name header in default blocks |
95
- | `unfurlLinks` | boolean | No | `false` | Enable link unfurling |
96
- | `unfurlMedia` | boolean | No | `false` | Enable media unfurling |
97
- | `mrkdwn` | boolean | No | `true` | Use mrkdwn formatting |
98
- | `retryConfig` | enum | No | `'default'` | Retry policy passed to WebClient |
99
-
100
- ## Mapping Settings
101
-
102
- Per-event mapping settings override destination defaults and unlock advanced
103
- features.
104
-
105
- | Setting | Effect | Mode |
106
- | -------------------- | ------------------------------------------------------- | ------- |
107
- | `channel` | Override channel for this rule | Web API |
108
- | `text` | Override text template | Both |
109
- | `blocks` | Override Block Kit blocks | Both |
110
- | `threadTs` | Post as a thread reply | Web API |
111
- | `replyBroadcast` | Broadcast threaded reply to channel | Web API |
112
- | `ephemeral` + `user` | Post via `chat.postEphemeral` | Web API |
113
- | `dm` + `user` | DM the user (`conversations.open` + `chat.postMessage`) | Web API |
114
-
115
- ## Required Slack App Scopes (Web API mode)
42
+ ## Documentation
116
43
 
117
- - `chat:write` -- post messages to channels the bot is in
118
- - `chat:write.public` -- post to any public channel without joining
119
- - `im:write` -- open DM conversations (only needed for `dm: true`)
44
+ Full configuration, mapping, and examples live in the docs:
45
+ **https://www.walkeros.io/docs/destinations/server/slack**
120
46
 
121
- ## Rate Limiting
47
+ ## Contribute
122
48
 
123
- - **Web API mode**: the SDK handles 429 with `Retry-After` automatically
124
- (default: 10 retries over ~30 min). Configure via `retryConfig`.
125
- - **Webhook mode**: no automatic retry. Use Web API mode if you need retry on
126
- rate limit.
49
+ Feel free to contribute by submitting an
50
+ [issue](https://github.com/elbwalker/walkerOS/issues), starting a
51
+ [discussion](https://github.com/elbwalker/walkerOS/discussions), or getting in
52
+ [contact](https://calendly.com/elb-alexander/30min).
127
53
 
128
- ## Volume Notes
54
+ ## License
129
55
 
130
- Slack is a notification channel, not an analytics warehouse. Use mapping
131
- `condition` to filter important events; route different events to different
132
- channels to spread the load.
56
+ MIT
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$meta": {
3
3
  "package": "@walkeros/server-destination-slack",
4
- "version": "4.1.0-next-1778668930820",
4
+ "version": "4.1.0",
5
5
  "type": "destination",
6
6
  "platform": [
7
7
  "server"
@@ -189,7 +189,7 @@
189
189
  "consent": {
190
190
  "functional": true
191
191
  },
192
- "id": "91f15d18cfef13d4",
192
+ "id": "ab80869737f7c0c5",
193
193
  "trigger": "test",
194
194
  "entity": "lead",
195
195
  "action": "submit",
@@ -286,7 +286,7 @@
286
286
  "consent": {
287
287
  "functional": true
288
288
  },
289
- "id": "ca09003e270ee0ed",
289
+ "id": "e97a8d0c87ee4de1",
290
290
  "trigger": "test",
291
291
  "entity": "deploy",
292
292
  "action": "complete",
@@ -349,7 +349,7 @@
349
349
  "consent": {
350
350
  "functional": true
351
351
  },
352
- "id": "c66154c11a6aec02",
352
+ "id": "16a28dde4c892ec3",
353
353
  "trigger": "test",
354
354
  "entity": "quota",
355
355
  "action": "warning",
@@ -420,7 +420,7 @@
420
420
  "consent": {
421
421
  "functional": true
422
422
  },
423
- "id": "b71d15db5b69d93c",
423
+ "id": "a007fd726d7291bd",
424
424
  "trigger": "test",
425
425
  "entity": "error",
426
426
  "action": "occur",
@@ -527,7 +527,7 @@
527
527
  "consent": {
528
528
  "functional": true
529
529
  },
530
- "id": "7afd8eb2667a4848",
530
+ "id": "7fe2e97e02036adb",
531
531
  "trigger": "load",
532
532
  "entity": "order",
533
533
  "action": "complete",
@@ -594,7 +594,7 @@
594
594
  "consent": {
595
595
  "functional": true
596
596
  },
597
- "id": "20acf92aa08b945f",
597
+ "id": "6a94e897c94f458b",
598
598
  "trigger": "test",
599
599
  "entity": "checkout",
600
600
  "action": "step",
@@ -662,7 +662,7 @@
662
662
  "consent": {
663
663
  "functional": true
664
664
  },
665
- "id": "07b39de259a9ce0c",
665
+ "id": "b4153767484bfc72",
666
666
  "trigger": "test",
667
667
  "entity": "user",
668
668
  "action": "signup",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@walkeros/server-destination-slack",
3
3
  "description": "Slack server destination for walkerOS (Incoming Webhook + @slack/web-api, Block Kit, channel routing, threading, DMs)",
4
- "version": "4.1.0-next-1778668930820",
4
+ "version": "4.1.0",
5
5
  "license": "MIT",
6
6
  "exports": {
7
7
  ".": {
@@ -22,7 +22,8 @@
22
22
  }
23
23
  },
24
24
  "files": [
25
- "dist/**"
25
+ "dist/**",
26
+ "CHANGELOG.md"
26
27
  ],
27
28
  "scripts": {
28
29
  "build": "tsup --silent",
@@ -35,11 +36,11 @@
35
36
  },
36
37
  "dependencies": {
37
38
  "@slack/web-api": "^7.0.0",
38
- "@walkeros/core": "4.1.0-next-1778668930820",
39
- "@walkeros/server-core": "4.1.0-next-1778668930820"
39
+ "@walkeros/core": "4.1.0",
40
+ "@walkeros/server-core": "4.1.0"
40
41
  },
41
42
  "devDependencies": {
42
- "@walkeros/collector": "4.1.0-next-1778668930820"
43
+ "@walkeros/collector": "4.1.0"
43
44
  },
44
45
  "repository": {
45
46
  "url": "git+https://github.com/elbwalker/walkerOS.git",