clinkx 0.1.9 → 0.1.10

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/pipeline.js CHANGED
@@ -104,7 +104,11 @@ export async function executePipeline(input, registry, options) {
104
104
  // 3. Create run directory
105
105
  runDir = createRunDir();
106
106
  if (options?.progress) {
107
- progress = new ProgressReporter(options.progress.server, options.progress.token, runDir.runId);
107
+ progress = new ProgressReporter(options.progress.server, options.progress.token, {
108
+ runId: runDir.runId,
109
+ cliName: adapter.name,
110
+ role: input.role ?? "default",
111
+ });
108
112
  void progress.emit("resolve");
109
113
  }
110
114
  // 4. Assemble prompt
@@ -119,7 +123,8 @@ export async function executePipeline(input, registry, options) {
119
123
  logger.warn({ chars: prompt.length, adapter: adapter.name }, "assembled prompt exceeds %d chars (%d chars) — risk of CLI crash (e.g. Codex os error 35)", PROMPT_SIZE_WARN_THRESHOLD, prompt.length);
120
124
  }
121
125
  // 5. Execute subprocess
122
- void progress?.emit("spawn");
126
+ void progress?.emit("running");
127
+ progress?.startHeartbeat();
123
128
  const runOptions = {
124
129
  adapter,
125
130
  prompt,
@@ -140,6 +145,7 @@ export async function executePipeline(input, registry, options) {
140
145
  runOptions.signal = options.signal;
141
146
  }
142
147
  const runResult = await runSubprocess(runOptions);
148
+ progress?.stopHeartbeat();
143
149
  // 6. Handle cancellation (no response per MCP spec)
144
150
  if (runResult.killed && options?.signal?.aborted) {
145
151
  throw new CancellationError();
@@ -364,8 +370,9 @@ export async function executePipeline(input, registry, options) {
364
370
  return result;
365
371
  }
366
372
  finally {
373
+ progress?.stopHeartbeat();
367
374
  if (progress && !options?.signal?.aborted) {
368
- void progress.emit("done");
375
+ await progress.emit("done");
369
376
  }
370
377
  semaphore.release();
371
378
  if (runDir && !(input.debug && input.debug_keep_artifacts)) {
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,78 @@
1
1
  import type { Server } from "@modelcontextprotocol/sdk/server/index.js";
2
2
  /** Stages emitted during a clink invocation. */
3
- export type ProgressStage = "resolve" | "spawn" | "parse" | "done";
3
+ export type ProgressStage = "resolve" | "running" | "parse" | "done";
4
+ export interface ProgressContext {
5
+ runId: string;
6
+ cliName: string;
7
+ role: string;
8
+ }
4
9
  /**
5
- * Progress emitter for a single clink request.
10
+ * Progress emitter for a single clink request with context-aware,
11
+ * human-readable status messages.
6
12
  *
7
- * - Emits `notifications/progress` at defined stages
8
- * - Rate-limits to max 1 notification per 500ms per request
9
- * - Never includes secrets only run_id and stage name
13
+ * - Weighted progress: resolve=5, running=10→85, parse=90, done=100
14
+ * - Serialized emit queue preserves stage order
15
+ * - Monotonic delivery: lower/equal stages silently dropped
16
+ * - Heartbeat ramps progress during the long "running" phase
17
+ * - User-facing messages show CLI and role; runId stays in structured logs
10
18
  */
11
19
  export declare class ProgressReporter {
12
20
  private readonly server;
13
21
  private readonly progressToken;
14
- private readonly runId;
22
+ private readonly context;
23
+ /** Monotonic guard: highest stage ordinal emitted so far. */
24
+ private highestEmitted;
25
+ /** Last wall-clock time a notification was actually sent. */
15
26
  private lastEmitTime;
16
- constructor(server: Server, progressToken: string | number, runId: string);
27
+ /** Serialized promise chain every emit() chains behind this. */
28
+ private chain;
29
+ /** Heartbeat timer handle. */
30
+ private heartbeatTimer;
31
+ /** Heartbeat counter for progress ramping. */
32
+ private heartbeatCount;
33
+ /** Timestamp when heartbeat started (for elapsed display). */
34
+ private heartbeatStartTime;
35
+ constructor(server: Server, progressToken: string | number, context: ProgressContext);
36
+ private get runId();
17
37
  /**
18
38
  * Emit a progress notification for the given stage.
19
- * Respects rate-limiting (500ms minimum interval).
20
- * The "done" stage always emits regardless of rate limit.
39
+ *
40
+ * Calls are serialized so stage transitions are delivered in order.
41
+ * Lower/equal stages after a higher one are silently dropped.
42
+ */
43
+ emit(stage: ProgressStage, message?: string): Promise<void>;
44
+ /**
45
+ * Start a periodic heartbeat during the "running" phase.
46
+ * Each tick ramps progress from 10 toward 85 (asymptotic) and
47
+ * includes elapsed wall time in the message.
48
+ */
49
+ startHeartbeat(intervalMs?: number): void;
50
+ /** Stop the heartbeat timer. */
51
+ stopHeartbeat(): void;
52
+ /**
53
+ * Actual emit logic, runs inside the serialized chain.
54
+ */
55
+ private doEmit;
56
+ /**
57
+ * Emit a raw progress notification (used by heartbeat).
58
+ * Serialized through the same chain and subject to
59
+ * monotonic + rate-limit guards.
60
+ */
61
+ private emitRaw;
62
+ private doEmitRaw;
63
+ private defaultMessage;
64
+ private formatMessage;
65
+ /**
66
+ * Send the notification to the MCP client.
67
+ * Best-effort: never fails the request.
68
+ */
69
+ private send;
70
+ /**
71
+ * Compute heartbeat progress: asymptotic ramp from 10 toward 85.
72
+ * Uses exponential decay: progress = ceiling - (ceiling - base) * e^(-k*n)
73
+ * so each heartbeat adds diminishing increments that never reach 85.
21
74
  */
22
- emit(stage: ProgressStage): Promise<void>;
75
+ private computeHeartbeatProgress;
23
76
  }
24
77
  /**
25
78
  * Extract _meta.progressToken from the raw MCP request params.
package/dist/progress.js CHANGED
@@ -1,53 +1,181 @@
1
1
  import { logger } from "./logger.js";
2
+ /** Ordinal for monotonic delivery enforcement. */
2
3
  const STAGE_ORDER = {
3
- resolve: 1,
4
- spawn: 2,
5
- parse: 3,
6
- done: 4,
4
+ resolve: 0,
5
+ running: 1,
6
+ parse: 2,
7
+ done: 3,
7
8
  };
8
- const TOTAL_STAGES = 4;
9
+ /** Progress values (out of 100) for each stage. */
10
+ const STAGE_PROGRESS = {
11
+ resolve: 5,
12
+ running: 10,
13
+ parse: 90,
14
+ done: 100,
15
+ };
16
+ const TOTAL = 100;
9
17
  /** Minimum interval between progress notifications (ms). */
10
18
  const MIN_INTERVAL_MS = 500;
19
+ /** Upper bound the heartbeat ramps toward (capped at CEILING - 1). */
20
+ const HEARTBEAT_CEILING = 85;
21
+ /** Default heartbeat interval (ms). */
22
+ const DEFAULT_HEARTBEAT_INTERVAL_MS = 3000;
11
23
  /**
12
- * Progress emitter for a single clink request.
24
+ * Progress emitter for a single clink request with context-aware,
25
+ * human-readable status messages.
13
26
  *
14
- * - Emits `notifications/progress` at defined stages
15
- * - Rate-limits to max 1 notification per 500ms per request
16
- * - Never includes secrets only run_id and stage name
27
+ * - Weighted progress: resolve=5, running=10→85, parse=90, done=100
28
+ * - Serialized emit queue preserves stage order
29
+ * - Monotonic delivery: lower/equal stages silently dropped
30
+ * - Heartbeat ramps progress during the long "running" phase
31
+ * - User-facing messages show CLI and role; runId stays in structured logs
17
32
  */
18
33
  export class ProgressReporter {
19
34
  server;
20
35
  progressToken;
21
- runId;
36
+ context;
37
+ /** Monotonic guard: highest stage ordinal emitted so far. */
38
+ highestEmitted = -1;
39
+ /** Last wall-clock time a notification was actually sent. */
22
40
  lastEmitTime = 0;
23
- constructor(server, progressToken, runId) {
41
+ /** Serialized promise chain — every emit() chains behind this. */
42
+ chain = Promise.resolve();
43
+ /** Heartbeat timer handle. */
44
+ heartbeatTimer;
45
+ /** Heartbeat counter for progress ramping. */
46
+ heartbeatCount = 0;
47
+ /** Timestamp when heartbeat started (for elapsed display). */
48
+ heartbeatStartTime = 0;
49
+ constructor(server, progressToken, context) {
24
50
  this.server = server;
25
51
  this.progressToken = progressToken;
26
- this.runId = runId;
52
+ this.context = context;
53
+ }
54
+ get runId() {
55
+ return this.context.runId;
27
56
  }
28
57
  /**
29
58
  * Emit a progress notification for the given stage.
30
- * Respects rate-limiting (500ms minimum interval).
31
- * The "done" stage always emits regardless of rate limit.
59
+ *
60
+ * Calls are serialized so stage transitions are delivered in order.
61
+ * Lower/equal stages after a higher one are silently dropped.
62
+ */
63
+ emit(stage, message) {
64
+ const p = this.chain.then(() => this.doEmit(stage, message));
65
+ // Replace chain — next caller queues behind this one.
66
+ // Catch to prevent unhandled-rejection on the stored chain;
67
+ // callers still see errors via the returned promise.
68
+ this.chain = p.catch(() => { });
69
+ return p;
70
+ }
71
+ /**
72
+ * Start a periodic heartbeat during the "running" phase.
73
+ * Each tick ramps progress from 10 toward 85 (asymptotic) and
74
+ * includes elapsed wall time in the message.
32
75
  */
33
- async emit(stage) {
76
+ startHeartbeat(intervalMs = DEFAULT_HEARTBEAT_INTERVAL_MS) {
77
+ this.stopHeartbeat();
78
+ this.heartbeatCount = 0;
79
+ this.heartbeatStartTime = Date.now();
80
+ const tick = () => {
81
+ this.heartbeatCount++;
82
+ const elapsedSeconds = Math.round((Date.now() - this.heartbeatStartTime) / 1000);
83
+ const message = this.formatMessage(`running (${elapsedSeconds}s)`);
84
+ const progress = this.computeHeartbeatProgress();
85
+ // Self-scheduling: next tick fires only after current send completes.
86
+ // This bounds the chain to at most 1 pending heartbeat.
87
+ void this.emitRaw("running", progress, message).finally(() => {
88
+ if (this.heartbeatTimer != null) {
89
+ this.heartbeatTimer = setTimeout(tick, intervalMs);
90
+ this.heartbeatTimer.unref();
91
+ }
92
+ });
93
+ };
94
+ this.heartbeatTimer = setTimeout(tick, intervalMs);
95
+ this.heartbeatTimer.unref();
96
+ }
97
+ /** Stop the heartbeat timer. */
98
+ stopHeartbeat() {
99
+ if (this.heartbeatTimer != null) {
100
+ clearTimeout(this.heartbeatTimer);
101
+ this.heartbeatTimer = undefined;
102
+ }
103
+ }
104
+ // ── Internal ──────────────────────────────────────────────
105
+ /**
106
+ * Actual emit logic, runs inside the serialized chain.
107
+ */
108
+ async doEmit(stage, message) {
109
+ const order = STAGE_ORDER[stage];
110
+ // Monotonic guard: drop if we've already emitted this stage or higher.
111
+ if (order <= this.highestEmitted) {
112
+ logger.debug({ stage, runId: this.runId, highestEmitted: this.highestEmitted }, "progress stage dropped (monotonic guard)");
113
+ return;
114
+ }
115
+ const progress = STAGE_PROGRESS[stage];
116
+ const msg = message ?? this.defaultMessage(stage);
117
+ await this.send(stage, progress, msg);
118
+ this.highestEmitted = order;
119
+ }
120
+ /**
121
+ * Emit a raw progress notification (used by heartbeat).
122
+ * Serialized through the same chain and subject to
123
+ * monotonic + rate-limit guards.
124
+ */
125
+ emitRaw(stage, progress, message) {
126
+ const p = this.chain.then(() => this.doEmitRaw(stage, progress, message));
127
+ this.chain = p.catch(() => { });
128
+ return p;
129
+ }
130
+ async doEmitRaw(stage, progress, message) {
131
+ const order = STAGE_ORDER[stage];
132
+ // Heartbeat uses strict-less-than (order < highestEmitted) because multiple
133
+ // "running" emissions at order=1 are expected — each with increasing progress
134
+ // values. The <= check in doEmit() correctly blocks repeated stage transitions,
135
+ // but would erroneously block heartbeat updates within the same stage.
136
+ if (order < this.highestEmitted) {
137
+ logger.debug({ stage, runId: this.runId, highestEmitted: this.highestEmitted }, "heartbeat dropped (monotonic guard)");
138
+ return;
139
+ }
140
+ // Rate-limit.
34
141
  const now = Date.now();
35
- const elapsed = now - this.lastEmitTime;
36
- // Rate-limit: skip if too soon, unless it's the final "done" stage
37
- if (stage !== "done" && elapsed < MIN_INTERVAL_MS) {
38
- logger.debug({ stage, runId: this.runId }, "progress notification rate-limited");
142
+ if (now - this.lastEmitTime < MIN_INTERVAL_MS) {
143
+ logger.debug({ stage, runId: this.runId }, "heartbeat rate-limited");
39
144
  return;
40
145
  }
41
- const progress = STAGE_ORDER[stage];
42
- // Message contains only run_id and stage no secrets
43
- const message = `[${this.runId}] ${stage}`;
146
+ await this.send(stage, progress, message);
147
+ // Mark that we've emitted "running" at least once.
148
+ if (order > this.highestEmitted) {
149
+ this.highestEmitted = order;
150
+ }
151
+ }
152
+ defaultMessage(stage) {
153
+ switch (stage) {
154
+ case "resolve":
155
+ return this.formatMessage("resolving...");
156
+ case "running":
157
+ return this.formatMessage("running");
158
+ case "parse":
159
+ return this.formatMessage("parsing...");
160
+ case "done":
161
+ return this.formatMessage("done");
162
+ }
163
+ }
164
+ formatMessage(status) {
165
+ return `${this.context.cliName} (${this.context.role}): ${status}`;
166
+ }
167
+ /**
168
+ * Send the notification to the MCP client.
169
+ * Best-effort: never fails the request.
170
+ */
171
+ async send(stage, progress, message) {
44
172
  try {
45
173
  await this.server.notification({
46
174
  method: "notifications/progress",
47
175
  params: {
48
176
  progressToken: this.progressToken,
49
177
  progress,
50
- total: TOTAL_STAGES,
178
+ total: TOTAL,
51
179
  message,
52
180
  },
53
181
  });
@@ -59,6 +187,20 @@ export class ProgressReporter {
59
187
  logger.warn({ stage, runId: this.runId, err }, "failed to send progress notification");
60
188
  }
61
189
  }
190
+ /**
191
+ * Compute heartbeat progress: asymptotic ramp from 10 toward 85.
192
+ * Uses exponential decay: progress = ceiling - (ceiling - base) * e^(-k*n)
193
+ * so each heartbeat adds diminishing increments that never reach 85.
194
+ */
195
+ computeHeartbeatProgress() {
196
+ const base = STAGE_PROGRESS["running"]; // 10
197
+ const range = HEARTBEAT_CEILING - base; // 75
198
+ // k = 0.03 gives ~60 heartbeats (3 min) to reach ~83%
199
+ const k = 0.03;
200
+ const raw = HEARTBEAT_CEILING - range * Math.exp(-k * this.heartbeatCount);
201
+ // Cap below ceiling so heartbeat never reaches the parse stage's territory.
202
+ return Math.min(HEARTBEAT_CEILING - 1, Math.round(raw));
203
+ }
62
204
  }
63
205
  /**
64
206
  * Extract _meta.progressToken from the raw MCP request params.
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAKrC,MAAM,WAAW,GAAkC;IACjD,OAAO,EAAE,CAAC;IACV,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACR,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,4DAA4D;AAC5D,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B;;;;;;GAMG;AACH,MAAM,OAAO,gBAAgB;IACV,MAAM,CAAS;IACf,aAAa,CAAkB;IAC/B,KAAK,CAAS;IACvB,YAAY,GAAG,CAAC,CAAC;IAEzB,YAAY,MAAc,EAAE,aAA8B,EAAE,KAAa;QACvE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,KAAoB;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;QAExC,mEAAmE;QACnE,IAAI,KAAK,KAAK,MAAM,IAAI,OAAO,GAAG,eAAe,EAAE,CAAC;YAClD,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,oCAAoC,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACpC,sDAAsD;QACtD,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAE3C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;gBAC7B,MAAM,EAAE,wBAAwB;gBAChC,MAAM,EAAE;oBACN,aAAa,EAAE,IAAI,CAAC,aAAa;oBACjC,QAAQ;oBACR,KAAK,EAAE,YAAY;oBACnB,OAAO;iBACR;aACF,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC/B,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,4BAA4B,CAAC,CAAC;QACrF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,kEAAkE;YAClE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,sCAAsC,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAA2C;IAE3C,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC/D,MAAM,KAAK,GAAI,IAAgC,CAAC,eAAe,CAAC,CAAC;IACjE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACzE,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clinkx",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "description": "ClinkX MCP STDIO server — CLI-to-CLI bridge tool",
5
5
  "type": "module",
6
6
  "engines": {