@fdcn/sourcefed 0.3.8 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/README.md +36 -1
  2. package/dist/{chunk-5JL3UV72.js → chunk-L4SMC2NT.js} +29 -6
  3. package/dist/cli.js +4485 -2511
  4. package/dist/daemon.js +31 -6
  5. package/dist/mcp.js +2281 -1105
  6. package/dist/opencode.js +1 -1
  7. package/dist/pi.js +1 -1
  8. package/dist.dts/adapters/opencode/bridge.d.ts +1 -1
  9. package/dist.dts/adapters/opencode/subscriptions.d.ts +2 -2
  10. package/dist.dts/adapters/opencode/tui/sidebar.d.ts +1 -1
  11. package/dist.dts/adapters/pi/src/dialog.d.ts +1 -1
  12. package/dist.dts/adapters/pi/src/monitors-dialog.d.ts +1 -1
  13. package/dist.dts/packages/cli/src/commands/monitor/index.d.ts +1 -1
  14. package/dist.dts/packages/cli/src/utils/daemon.d.ts +1 -1
  15. package/dist.dts/packages/cli/src/utils/format.d.ts +1 -1
  16. package/dist.dts/packages/cli/src/utils/webhooks.d.ts +1 -1
  17. package/dist.dts/packages/core/src/events.d.ts +2 -2
  18. package/dist.dts/packages/core/src/index.d.ts +4 -4
  19. package/dist.dts/packages/core/src/monitors/index.d.ts +3 -3
  20. package/dist.dts/packages/core/src/monitors/monitor.d.ts +6 -6
  21. package/dist.dts/packages/core/src/monitors/poll/monitor.d.ts +5 -5
  22. package/dist.dts/packages/core/src/monitors/poll/types/poll-monitor-options.d.ts +1 -1
  23. package/dist.dts/packages/core/src/monitors/poll/types/poll-runner.d.ts +2 -2
  24. package/dist.dts/packages/core/src/monitors/poll/utils/event-delivery-id.d.ts +1 -1
  25. package/dist.dts/packages/core/src/monitors/poll/utils/tick.d.ts +1 -1
  26. package/dist.dts/packages/core/src/monitors/service.d.ts +3 -3
  27. package/dist.dts/packages/core/src/monitors/utils/monitor-identity.d.ts +3 -3
  28. package/dist.dts/packages/core/src/monitors/webhook/monitor.d.ts +5 -5
  29. package/dist.dts/packages/core/src/monitors/webhook/types/pending-webhook-event.d.ts +1 -1
  30. package/dist.dts/packages/core/src/monitors/webhook/types/webhook-monitor-options.d.ts +1 -1
  31. package/dist.dts/packages/core/src/monitors/webhook/utils/deliver-webhook.d.ts +2 -2
  32. package/dist.dts/packages/core/src/monitors/webhook/utils/handle-webhook.d.ts +1 -1
  33. package/dist.dts/packages/core/src/monitors/webhook/utils/heartbeat-webhooks.d.ts +2 -2
  34. package/dist.dts/packages/core/src/runtime.d.ts +3 -3
  35. package/dist.dts/packages/core/src/sources/index.d.ts +1 -1
  36. package/dist.dts/packages/core/src/sources/types/source-registry.d.ts +1 -1
  37. package/dist.dts/packages/core/src/storage/json.d.ts +2 -2
  38. package/dist.dts/packages/core/src/types/monitor-context.d.ts +2 -2
  39. package/dist.dts/packages/core/src/types/monitor-options.d.ts +1 -1
  40. package/dist.dts/packages/core/src/utils/event-to-text.d.ts +1 -1
  41. package/dist.dts/packages/core/src/utils/to-monitor-event.d.ts +2 -2
  42. package/dist.dts/packages/daemon/src/client.d.ts +1 -1
  43. package/dist.dts/packages/daemon/src/daemon.d.ts +3 -3
  44. package/dist.dts/packages/daemon/src/event-stream.d.ts +1 -1
  45. package/dist.dts/packages/daemon/src/event-transport.d.ts +4 -0
  46. package/dist.dts/packages/daemon/src/event-transport.test.d.ts +1 -0
  47. package/dist.dts/packages/daemon/src/fetch-isolation.test.d.ts +1 -0
  48. package/dist.dts/packages/daemon/src/index.d.ts +3 -3
  49. package/dist.dts/packages/daemon/src/registry.d.ts +5 -5
  50. package/dist.dts/packages/daemon/src/types/client.d.ts +1 -1
  51. package/dist.dts/packages/daemon/src/types/daemon.d.ts +1 -1
  52. package/dist.dts/packages/daemon/src/types/protocol.d.ts +1 -1
  53. package/dist.dts/packages/daemon/src/utils/sink.d.ts +2 -2
  54. package/dist.dts/packages/daemon/src/utils/target.d.ts +1 -1
  55. package/dist.dts/packages/mcp/src/server.d.ts +1 -1
  56. package/dist.dts/packages/mcp/src/uris.d.ts +2 -2
  57. package/dist.dts/providers/github/src/index.d.ts +1 -1
  58. package/dist.dts/providers/github/src/monitor.d.ts +6 -6
  59. package/dist.dts/providers/github/src/poll/index.d.ts +1 -1
  60. package/dist.dts/providers/github/src/poll/monitor.d.ts +2 -2
  61. package/dist.dts/providers/github/src/poll/utils/append-comments.d.ts +1 -1
  62. package/dist.dts/providers/github/src/poll/utils/append-github-ci-event.d.ts +1 -1
  63. package/dist.dts/providers/github/src/poll/utils/append-github-conflict-event.d.ts +1 -1
  64. package/dist.dts/providers/github/src/poll/utils/append-github-reviews.d.ts +1 -1
  65. package/dist.dts/providers/github/src/poll/utils/append-github-state-event.d.ts +1 -1
  66. package/dist.dts/providers/github/src/poll/utils/empty-cursor.d.ts +1 -1
  67. package/dist.dts/providers/github/src/poll/utils/poll-github.d.ts +1 -1
  68. package/dist.dts/providers/github/src/webhook/index.d.ts +2 -2
  69. package/dist.dts/providers/github/src/webhook/monitor.d.ts +2 -2
  70. package/dist.dts/providers/github/src/webhook/utils/github-event-handlers.d.ts +1 -1
  71. package/dist.dts/providers/github/src/webhook/utils/parse-github-webhook.d.ts +1 -1
  72. package/dist.dts/providers/github/src/webhook/utils/update-github-cursor.d.ts +2 -2
  73. package/dist.dts/providers/jira/src/index.d.ts +1 -1
  74. package/dist.dts/providers/jira/src/monitor.d.ts +5 -5
  75. package/dist.dts/providers/jira/src/poll/index.d.ts +1 -1
  76. package/dist.dts/providers/jira/src/poll/monitor.d.ts +2 -2
  77. package/dist.dts/providers/jira/src/poll/utils/append-jira-changelog.d.ts +1 -1
  78. package/dist.dts/providers/jira/src/poll/utils/append-jira-comments.d.ts +1 -1
  79. package/dist.dts/providers/jira/src/poll/utils/append-jira-description.d.ts +1 -1
  80. package/dist.dts/providers/jira/src/poll/utils/empty-cursor.d.ts +1 -1
  81. package/dist.dts/providers/jira/src/poll/utils/jira-changelog-event.d.ts +1 -1
  82. package/dist.dts/providers/jira/src/poll/utils/poll-jira.d.ts +1 -1
  83. package/dist.dts/providers/slack/src/index.d.ts +1 -1
  84. package/dist.dts/providers/slack/src/monitor.d.ts +6 -6
  85. package/dist.dts/providers/slack/src/poll/index.d.ts +1 -1
  86. package/dist.dts/providers/slack/src/poll/monitor.d.ts +2 -2
  87. package/dist.dts/providers/slack/src/poll/utils/parse-slack-read-result.d.ts +1 -1
  88. package/dist.dts/providers/slack/src/poll/utils/poll-slack.d.ts +1 -1
  89. package/dist.dts/providers/slack/src/webhook/index.d.ts +1 -1
  90. package/dist.dts/providers/slack/src/webhook/monitor.d.ts +2 -2
  91. package/dist.dts/providers/slack/src/webhook/utils/parse-slack-webhook.d.ts +1 -1
  92. package/dist.dts/providers/slack/src/webhook/utils/update-slack-cursor.d.ts +2 -2
  93. package/dist.dts/providers/yab/src/index.d.ts +1 -1
  94. package/dist.dts/providers/yab/src/monitor.d.ts +5 -5
  95. package/dist.dts/providers/yab/src/poll/index.d.ts +1 -1
  96. package/dist.dts/providers/yab/src/poll/monitor.d.ts +2 -2
  97. package/dist.dts/providers/yab/src/poll/utils/feed-events.d.ts +1 -1
  98. package/dist.dts/providers/yab/src/poll/utils/parse-feed.d.ts +1 -1
  99. package/dist.dts/providers/yab/src/poll/utils/poll-yab.d.ts +1 -1
  100. package/dist.dts/providers/yab/src/poll/utils/yab-mcp.d.ts +1 -1
  101. package/package.json +27 -9
package/dist/daemon.js CHANGED
@@ -11758,6 +11758,33 @@ function parseDaemonFrame(line) {
11758
11758
  }
11759
11759
  }
11760
11760
 
11761
+ // packages/daemon/src/event-transport.ts
11762
+ import { get as getHttp } from "node:http";
11763
+ import { get as getHttps } from "node:https";
11764
+ import { Readable as Readable2 } from "node:stream";
11765
+ async function openEventResponse(url, headers, signal) {
11766
+ signal.throwIfAborted();
11767
+ const endpoint = new URL(url);
11768
+ if (endpoint.protocol !== "http:" && endpoint.protocol !== "https:") {
11769
+ throw new Error("event stream requires HTTP or HTTPS");
11770
+ }
11771
+ const get = endpoint.protocol === "https:" ? getHttps : getHttp;
11772
+ const response = await new Promise((resolve, reject) => {
11773
+ const request = get(endpoint, { headers, signal, agent: false }, resolve);
11774
+ request.once("error", reject);
11775
+ });
11776
+ if (!response.statusCode || response.statusCode < 200 || response.statusCode >= 300) {
11777
+ response.destroy();
11778
+ throw new Error("event stream failed: " + response.statusCode);
11779
+ }
11780
+ return response;
11781
+ }
11782
+ function eventReader(response) {
11783
+ return Readable2.toWeb(response, {
11784
+ strategy: { highWaterMark: 64 * 1024, size: (chunk) => chunk.byteLength }
11785
+ }).getReader();
11786
+ }
11787
+
11761
11788
  // packages/daemon/src/event-stream.ts
11762
11789
  var DaemonEventStream = class {
11763
11790
  constructor(url, headers, onEvents, acknowledge, onClose) {
@@ -11831,14 +11858,11 @@ var DaemonEventStream = class {
11831
11858
  this.stream = controller;
11832
11859
  this.controller.signal.addEventListener("abort", abort, { once: true });
11833
11860
  let reader;
11861
+ let response;
11834
11862
  try {
11835
11863
  this.controller.signal.throwIfAborted();
11836
- const response = await fetch(this.url, { signal: controller.signal, headers: this.headers });
11837
- if (!response.ok || !response.body) {
11838
- await response.body?.cancel();
11839
- throw new Error(`event stream failed: ${response.status}`);
11840
- }
11841
- reader = response.body.getReader();
11864
+ response = await openEventResponse(this.url, this.headers, controller.signal);
11865
+ reader = eventReader(response);
11842
11866
  const decoder = new TextDecoder();
11843
11867
  let buffer = "";
11844
11868
  while (!controller.signal.aborted) {
@@ -11852,6 +11876,7 @@ var DaemonEventStream = class {
11852
11876
  } finally {
11853
11877
  await reader?.cancel().catch(() => void 0);
11854
11878
  reader?.releaseLock();
11879
+ response?.destroy();
11855
11880
  this.controller.signal.removeEventListener("abort", abort);
11856
11881
  if (this.stream === controller) this.stream = void 0;
11857
11882
  }