@openlap/openlap 1.1.8 → 1.1.9

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/dist/feed.js CHANGED
@@ -39,6 +39,7 @@ export class FeedManager {
39
39
  .catch((err) => {
40
40
  if (err.name === "AbortError")
41
41
  return;
42
+ process.stderr.write(`[openlap] SSE ${tag} error: ${err.message}\n`);
42
43
  // Reconnect after 5s
43
44
  if (this.streams.has(tag)) {
44
45
  setTimeout(() => this.connect(tag, controller), 5000);
package/dist/proxy.js CHANGED
@@ -187,11 +187,15 @@ export async function startProxy() {
187
187
  const channel = args.channel;
188
188
  if (!channel)
189
189
  return { content: [{ type: "text", text: "channel required" }], isError: true };
190
+ // Already joined -- return current state
191
+ if (channels.isJoined(channel)) {
192
+ return { content: [{ type: "text", text: `Already in ${channel}. Listening for updates.` }] };
193
+ }
190
194
  const result = await channels.join(channel, args.name);
191
195
  // Use v1 FeedManager for SSE delivery (proven working)
192
196
  feeds.subscribe(channel);
193
197
  if (!result)
194
- return { content: [{ type: "text", text: JSON.stringify({ error: "already joined or failed" }) }] };
198
+ return { content: [{ type: "text", text: `Failed to join ${channel}. Check channel name and auth.` }], isError: true };
195
199
  const r = result;
196
200
  const lines = [`Joined ${channel}.`];
197
201
  if (r.feed_url)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openlap/openlap",
3
- "version": "1.1.8",
3
+ "version": "1.1.9",
4
4
  "description": "Local MCP proxy for openlap.app -- auto-save, live feeds, project detection, one install",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",