@interactive-inc/claude-funnel 0.64.2 → 0.66.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.
Files changed (41) hide show
  1. package/dist/bin.js +5 -5
  2. package/dist/broadcaster-DVNcw00K.d.ts +138 -0
  3. package/dist/channel.d.ts +161 -0
  4. package/dist/channel.js +203 -0
  5. package/dist/{channels-CRGb6B5_.d.ts → channels-DR90RmUP.d.ts} +5 -4
  6. package/dist/claude.d.ts +4 -4
  7. package/dist/claude.js +1 -1
  8. package/dist/{connector-descriptor-BFIhyTfa.d.ts → connector-descriptor-CmyHlEiT.d.ts} +3 -26
  9. package/dist/connectors/discord.d.ts +27 -6
  10. package/dist/connectors/discord.js +1 -1
  11. package/dist/connectors/gh.d.ts +4 -3
  12. package/dist/connectors/schedule.d.ts +4 -3
  13. package/dist/connectors/slack.d.ts +4 -3
  14. package/dist/diagnostics.d.ts +1 -1
  15. package/dist/{discord-connector-DIFkYBbi.js → discord-connector-DXARcO6w.js} +18 -2
  16. package/dist/docs.d.ts +1 -1
  17. package/dist/doctor.d.ts +1 -1
  18. package/dist/{file-process-guard-tVcgckH6.d.ts → file-process-guard-CiBwXjzm.d.ts} +5 -4
  19. package/dist/{flume-source-listener-BNyAII7N.d.ts → flume-source-listener-FzR5lGpL.d.ts} +2 -1
  20. package/dist/{funnel-diagnostics-b9ar0Ing.d.ts → funnel-diagnostics-kbd27d7I.d.ts} +1 -1
  21. package/dist/{funnel-doctor-CnRQi4kM.d.ts → funnel-doctor-CVTNUtDn.d.ts} +2 -2
  22. package/dist/{funnel-recovery-CMhY8Jfk.d.ts → funnel-recovery-D8MkiTpk.d.ts} +1 -1
  23. package/dist/gateway/daemon.js +19 -19
  24. package/dist/gateway.d.ts +3 -2
  25. package/dist/{index-Ds6sHhA-.d.ts → index-BU1TtuFy.d.ts} +6 -139
  26. package/dist/index.d.ts +19 -17
  27. package/dist/local-config.d.ts +2 -2
  28. package/dist/logger-Bc_Ooypb.d.ts +25 -0
  29. package/dist/{memory-token-prompter-BoV8Hf-n.d.ts → memory-token-prompter-D0kIdhar.d.ts} +2 -2
  30. package/dist/{profiles-cVZQkM69.d.ts → profiles-M24JrcOh.d.ts} +3 -3
  31. package/dist/profiles.d.ts +1 -1
  32. package/dist/recovery.d.ts +1 -1
  33. package/dist/{settings-reader-BNxjsxCB.d.ts → settings-reader-BnKIbmsD.d.ts} +1 -1
  34. package/package.json +7 -2
  35. /package/dist/{discord-connector-schema-D-bOVAKt.d.ts → discord-connector-schema-D1dyxhXk.d.ts} +0 -0
  36. /package/dist/{file-system-VhwwXZbm.d.ts → file-system-DHgbuTFb.d.ts} +0 -0
  37. /package/dist/{funnel-docs-CNklHvbt.d.ts → funnel-docs-Cd66sKyV.d.ts} +0 -0
  38. /package/dist/{gh-connector-schema-DWQaB6gX.d.ts → gh-connector-schema-BCHEqpUg.d.ts} +0 -0
  39. /package/dist/{schedule-connector-schema-Z0RXLgPI.d.ts → schedule-connector-schema-D7ZEKvit.d.ts} +0 -0
  40. /package/dist/{settings-schema-BL_c2Udm.d.ts → settings-schema-IShSMm5G.d.ts} +0 -0
  41. /package/dist/{slack-event-processor-BhCf5Wiy.d.ts → slack-event-processor-BDTr62cN.d.ts} +0 -0
@@ -1,6 +1,7 @@
1
- import { B as FunnelProcessRunner, M as NotifyFn, N as CallInput, P as FunnelConnectorAdapter, W as FunnelLogger, _ as ConnectorDiagnosticLog, r as ConnectorDescriptor } from "../connector-descriptor-BFIhyTfa.js";
2
- import { t as FunnelFlumeSourceListener } from "../flume-source-listener-BNyAII7N.js";
3
- import { n as ghConnectorSchema, t as GhConnectorConfig } from "../gh-connector-schema-DWQaB6gX.js";
1
+ import { t as FunnelLogger } from "../logger-Bc_Ooypb.js";
2
+ import { M as CallInput, N as FunnelConnectorAdapter, g as ConnectorDiagnosticLog, j as NotifyFn, r as ConnectorDescriptor, z as FunnelProcessRunner } from "../connector-descriptor-CmyHlEiT.js";
3
+ import { t as FunnelFlumeSourceListener } from "../flume-source-listener-FzR5lGpL.js";
4
+ import { n as ghConnectorSchema, t as GhConnectorConfig } from "../gh-connector-schema-BCHEqpUg.js";
4
5
  import { FlumeRuntimeDeps } from "@interactive-inc/flume";
5
6
 
6
7
  //#region lib/engine/connectors/gh-adapter.d.ts
@@ -1,6 +1,7 @@
1
- import { M as NotifyFn, W as FunnelLogger, _ as ConnectorDiagnosticLog, j as FunnelConnectorListener, r as ConnectorDescriptor } from "../connector-descriptor-BFIhyTfa.js";
2
- import { n as FunnelFileSystem } from "../file-system-VhwwXZbm.js";
3
- import { a as scheduleConnectorSchema, i as scheduleCatchupPolicySchema, n as ScheduleConnectorConfig, o as scheduleEntrySchema, r as ScheduleEntry, t as ScheduleCatchupPolicy } from "../schedule-connector-schema-Z0RXLgPI.js";
1
+ import { t as FunnelLogger } from "../logger-Bc_Ooypb.js";
2
+ import { n as FunnelFileSystem } from "../file-system-DHgbuTFb.js";
3
+ import { A as FunnelConnectorListener, g as ConnectorDiagnosticLog, j as NotifyFn, r as ConnectorDescriptor } from "../connector-descriptor-CmyHlEiT.js";
4
+ import { a as scheduleConnectorSchema, i as scheduleCatchupPolicySchema, n as ScheduleConnectorConfig, o as scheduleEntrySchema, r as ScheduleEntry, t as ScheduleCatchupPolicy } from "../schedule-connector-schema-D7ZEKvit.js";
4
5
 
5
6
  //#region lib/engine/connectors/match-cron.d.ts
6
7
  /**
@@ -1,6 +1,7 @@
1
- import { M as NotifyFn, N as CallInput, P as FunnelConnectorAdapter, W as FunnelLogger, _ as ConnectorDiagnosticLog, l as FunnelHttpClient, r as ConnectorDescriptor } from "../connector-descriptor-BFIhyTfa.js";
2
- import { t as FunnelFlumeSourceListener } from "../flume-source-listener-BNyAII7N.js";
3
- import { a as SlackRawEvent, c as SlackMessageEvent, d as slackConnectorSchema, i as SlackProcessedSkip, l as SlackReactionEvent, n as SlackProcessed, o as SlackSkipReason, r as SlackProcessedEmit, s as SlackEvent, t as FunnelSlackEventProcessor, u as SlackConnectorConfig } from "../slack-event-processor-BhCf5Wiy.js";
1
+ import { t as FunnelLogger } from "../logger-Bc_Ooypb.js";
2
+ import { M as CallInput, N as FunnelConnectorAdapter, c as FunnelHttpClient, g as ConnectorDiagnosticLog, j as NotifyFn, r as ConnectorDescriptor } from "../connector-descriptor-CmyHlEiT.js";
3
+ import { t as FunnelFlumeSourceListener } from "../flume-source-listener-FzR5lGpL.js";
4
+ import { a as SlackRawEvent, c as SlackMessageEvent, d as slackConnectorSchema, i as SlackProcessedSkip, l as SlackReactionEvent, n as SlackProcessed, o as SlackSkipReason, r as SlackProcessedEmit, s as SlackEvent, t as FunnelSlackEventProcessor, u as SlackConnectorConfig } from "../slack-event-processor-BDTr62cN.js";
4
5
  import { FlumeRuntimeDeps } from "@interactive-inc/flume";
5
6
 
6
7
  //#region lib/engine/connectors/slack-adapter.d.ts
@@ -1,2 +1,2 @@
1
- import { a as DiagnosticsGatewayProbe, c as FunnelDiagnostics, d as DiagnosticEvent, f as previewOf, h as toDiagnosticEvent, i as DiagnosticsChannelSource, l as ReplayResult, m as toDiagnosticConnectionError, n as DiagnoseAllReport, o as DiagnosticsPublisher, p as queryRows, r as DiagnosisStatus, s as DiagnosticsTokenReader, t as ChannelDiagnosis, u as DiagnosticConnectionError } from "./funnel-diagnostics-b9ar0Ing.js";
1
+ import { a as DiagnosticsGatewayProbe, c as FunnelDiagnostics, d as DiagnosticEvent, f as previewOf, h as toDiagnosticEvent, i as DiagnosticsChannelSource, l as ReplayResult, m as toDiagnosticConnectionError, n as DiagnoseAllReport, o as DiagnosticsPublisher, p as queryRows, r as DiagnosisStatus, s as DiagnosticsTokenReader, t as ChannelDiagnosis, u as DiagnosticConnectionError } from "./funnel-diagnostics-kbd27d7I.js";
2
2
  export { ChannelDiagnosis, DiagnoseAllReport, DiagnosisStatus, DiagnosticConnectionError, DiagnosticEvent, DiagnosticsChannelSource, DiagnosticsGatewayProbe, DiagnosticsPublisher, DiagnosticsTokenReader, FunnelDiagnostics, ReplayResult, previewOf, queryRows, toDiagnosticConnectionError, toDiagnosticEvent };
@@ -66,6 +66,13 @@ var FunnelDiscordEventProcessor = class {
66
66
  };
67
67
  //#endregion
68
68
  //#region lib/engine/connectors/discord-flume-listener.ts
69
+ /**
70
+ * Default allowlist of Discord gateway dispatch types funnel forwards. Set
71
+ * to chat-style events so the typical consumer is not flooded by guild
72
+ * snapshot dispatches (GUILD_CREATE / PRESENCE_UPDATE / VOICE_STATE_UPDATE
73
+ * etc.). Override per-instance via `discordConnector({ eventTypes })`.
74
+ */
75
+ const DEFAULT_EVENT_TYPES = ["MESSAGE_CREATE", "MESSAGE_UPDATE"];
69
76
  const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
70
77
  const readString = (record, key) => {
71
78
  const value = record[key];
@@ -85,6 +92,7 @@ var FunnelFlumeDiscordListener = class extends FunnelFlumeSourceListener {
85
92
  env;
86
93
  flumeDeps;
87
94
  signal;
95
+ eventTypes;
88
96
  processor = null;
89
97
  constructor(deps) {
90
98
  super({
@@ -98,6 +106,7 @@ var FunnelFlumeDiscordListener = class extends FunnelFlumeSourceListener {
98
106
  this.env = deps.env ?? process.env;
99
107
  this.flumeDeps = deps.flumeDeps ?? {};
100
108
  this.signal = deps.signal;
109
+ this.eventTypes = deps.eventTypes === "all" ? "all" : new Set(deps.eventTypes ?? DEFAULT_EVENT_TYPES);
101
110
  }
102
111
  async start(notify) {
103
112
  this.diagnostics.recordConnection("started", "");
@@ -142,6 +151,12 @@ var FunnelFlumeDiscordListener = class extends FunnelFlumeSourceListener {
142
151
  this.diagnostics.recordProcessed(skipId, "skip:pre-ready", "");
143
152
  return;
144
153
  }
154
+ if (this.eventTypes !== "all" && !this.eventTypes.has(event.type)) {
155
+ const skipId = crypto.randomUUID();
156
+ this.diagnostics.recordRaw(skipId, JSON.stringify(event.data));
157
+ this.diagnostics.recordProcessed(skipId, `skip:filtered:${event.type}`, "");
158
+ return;
159
+ }
145
160
  const data = event.data;
146
161
  const author = isRecord(data.author) ? data.author : null;
147
162
  const authorIsBot = author !== null && author.bot === true;
@@ -201,7 +216,7 @@ var FunnelFlumeDiscordListener = class extends FunnelFlumeSourceListener {
201
216
  * The listener is backed by `@interactive-inc/flume`'s `FlumeDiscordSource`
202
217
  * (raw Gateway WebSocket).
203
218
  */
204
- const discordConnector = () => ({
219
+ const discordConnector = (options = {}) => ({
205
220
  type: "discord",
206
221
  toolExposed: true,
207
222
  createListener(config, deps) {
@@ -210,7 +225,8 @@ const discordConnector = () => ({
210
225
  channelId: deps.channelId,
211
226
  logger: deps.logger,
212
227
  diagnosticLog: deps.diagnosticLog,
213
- signal: deps.signal
228
+ signal: deps.signal,
229
+ eventTypes: options.eventTypes
214
230
  });
215
231
  },
216
232
  createAdapter(config, deps) {
package/dist/docs.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { n as FunnelDocs, t as DocsTopicListing } from "./funnel-docs-CNklHvbt.js";
1
+ import { n as FunnelDocs, t as DocsTopicListing } from "./funnel-docs-Cd66sKyV.js";
2
2
  export { DocsTopicListing, FunnelDocs };
package/dist/doctor.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { n as DoctorReport, r as FunnelDoctor, t as DoctorFixMode } from "./funnel-doctor-CnRQi4kM.js";
1
+ import { n as DoctorReport, r as FunnelDoctor, t as DoctorFixMode } from "./funnel-doctor-CVTNUtDn.js";
2
2
  export { DoctorFixMode, DoctorReport, FunnelDoctor };
@@ -1,7 +1,8 @@
1
- import { t as ChannelConfig } from "./settings-schema-BL_c2Udm.js";
2
- import { n as FunnelIdGenerator } from "./settings-reader-BNxjsxCB.js";
3
- import { B as FunnelProcessRunner, W as FunnelLogger } from "./connector-descriptor-BFIhyTfa.js";
4
- import { n as FunnelFileSystem } from "./file-system-VhwwXZbm.js";
1
+ import { t as FunnelLogger } from "./logger-Bc_Ooypb.js";
2
+ import { n as FunnelFileSystem } from "./file-system-DHgbuTFb.js";
3
+ import { t as ChannelConfig } from "./settings-schema-IShSMm5G.js";
4
+ import { n as FunnelIdGenerator } from "./settings-reader-BnKIbmsD.js";
5
+ import { z as FunnelProcessRunner } from "./connector-descriptor-CmyHlEiT.js";
5
6
 
6
7
  //#region lib/engine/claude/channel-resolver.d.ts
7
8
  type ChannelResolver = {
@@ -1,4 +1,5 @@
1
- import { W as FunnelLogger, _ as ConnectorDiagnosticLog, g as ConnectorConnectionStatus, j as FunnelConnectorListener } from "./connector-descriptor-BFIhyTfa.js";
1
+ import { t as FunnelLogger } from "./logger-Bc_Ooypb.js";
2
+ import { A as FunnelConnectorListener, g as ConnectorDiagnosticLog, h as ConnectorConnectionStatus } from "./connector-descriptor-CmyHlEiT.js";
2
3
  import { FlumeEventHandler, FlumeLogHandler, FlumeReconnectOptions, FlumeRunning, FlumeRuntimeDeps, FlumeSource, FlumeStatus } from "@interactive-inc/flume";
3
4
 
4
5
  //#region lib/engine/connectors/connector-diagnostics-recorder.d.ts
@@ -1,4 +1,4 @@
1
- import { t as ChannelConfig } from "./settings-schema-BL_c2Udm.js";
1
+ import { t as ChannelConfig } from "./settings-schema-IShSMm5G.js";
2
2
 
3
3
  //#region lib/engine/diagnostic-log/diagnostic-sql-reader.d.ts
4
4
  type Props$1 = {
@@ -1,5 +1,5 @@
1
- import { c as FunnelDiagnostics, n as DiagnoseAllReport, t as ChannelDiagnosis } from "./funnel-diagnostics-b9ar0Ing.js";
2
- import { n as RecoveryAction, t as FunnelRecovery } from "./funnel-recovery-CMhY8Jfk.js";
1
+ import { c as FunnelDiagnostics, n as DiagnoseAllReport, t as ChannelDiagnosis } from "./funnel-diagnostics-kbd27d7I.js";
2
+ import { n as RecoveryAction, t as FunnelRecovery } from "./funnel-recovery-D8MkiTpk.js";
3
3
 
4
4
  //#region lib/services/doctor/funnel-doctor.d.ts
5
5
  type Props = {
@@ -1,4 +1,4 @@
1
- import { t as ChannelConfig } from "./settings-schema-BL_c2Udm.js";
1
+ import { t as ChannelConfig } from "./settings-schema-IShSMm5G.js";
2
2
 
3
3
  //#region lib/services/recovery/funnel-recovery.d.ts
4
4
  /** Narrow gateway control — start / stop / restart and a probe. */