@cotal-ai/connector-jcode 0.67.0 → 0.68.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/dist/extension.d.ts.map +1 -1
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +1161 -1099
- package/dist/index.js +6 -389
- package/dist/mcp.js +458 -443
- package/dist/queue-fallback.d.ts +2 -32
- package/dist/queue-fallback.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/queue-fallback.d.ts
CHANGED
|
@@ -25,42 +25,12 @@
|
|
|
25
25
|
* give-up (#790), which leaves the batch UN-ACKED and therefore redeliverable rather than acking
|
|
26
26
|
* work the seat never saw — and which the reported connection state now refuses to call `ready`.
|
|
27
27
|
*/
|
|
28
|
-
/**
|
|
29
|
-
* Whether a REFUSED queued turn must force a connection boundary before the batch is re-delivered.
|
|
30
|
-
*
|
|
31
|
-
* BOTH OBVIOUS ANSWERS ARE WRONG AND EACH WAS MEASURED BY A REVIEWER, so the discriminator is
|
|
32
|
-
* neither flag but whether the thing blocking attribution CAN CLEAR ON ITS OWN.
|
|
33
|
-
*
|
|
34
|
-
* Trigger only on `!acknowledged` and a run-debt duplicate survives: a run whose acceptance window
|
|
35
|
-
* lapsed owes debt until that TURN ends, while the fallback's own sends are genuinely acknowledged,
|
|
36
|
-
* so the batch is refused, stays owed, and is re-delivered into a healthy Harness that accepts and
|
|
37
|
-
* RUNS each copy. Measured at 4 executions from 4 send frames.
|
|
38
|
-
*
|
|
39
|
-
* Trigger on every refusal and a live run becomes silent starvation: inside the refusal arm
|
|
40
|
-
* `!acknowledged || !attributable` is TAUTOLOGICALLY TRUE, so that spelling is `= true` with extra
|
|
41
|
-
* steps. It suppresses every write until the bridge is replaced, and with a turn held open for
|
|
42
|
-
* minutes the batch cannot reach the seat at all. Measured at 0 executions from 0 send frames.
|
|
43
|
-
*
|
|
44
|
-
* So the question is what owes the debt. A RUN settles its own promise when the turn ends, which
|
|
45
|
-
* genuinely proves the Harness is finished with that request, so attribution returns WITHOUT a
|
|
46
|
-
* boundary and waiting is correct: the batch is late by one turn, not lost. A LAPSED SEND settles
|
|
47
|
-
* nothing, because the SDK resolved it on its own accept timeout while the request stayed live at
|
|
48
|
-
* the Harness; no amount of waiting restores attribution, so only replacing the connection can.
|
|
49
|
-
*
|
|
50
|
-
* `unsettledRunDispatches` is therefore the self-clearing kind and must NOT force a boundary. But
|
|
51
|
-
* waiting alone is not enough either, because that is precisely the state sol measured duplicating:
|
|
52
|
-
* a send issued while a run is open CAN NEVER BE ATTRIBUTED, so it is refused every time and the
|
|
53
|
-
* loop re-sends it forever, and each refused copy was still ACCEPTED AND RUN by the Harness. The
|
|
54
|
-
* answer is to not issue it at all. See {@link attributionBlockedByOpenRun}: the batch is deferred,
|
|
55
|
-
* no frame is written, and the send happens once after the turn ends, when it can be attributed.
|
|
56
|
-
*/
|
|
57
|
-
export declare function refusalNeedsBoundary(sendLapsed: boolean): boolean;
|
|
58
28
|
/**
|
|
59
29
|
* Whether a queued-turn send must be DEFERRED because no acknowledgement it receives could be
|
|
60
30
|
* attributed to it.
|
|
61
31
|
*
|
|
62
|
-
* This
|
|
63
|
-
*
|
|
32
|
+
* This stops the duplicate at its source rather than cleaning up after it. While a run's
|
|
33
|
+
* acceptance window has lapsed, `message_accepted` carries only a session id, so an event
|
|
64
34
|
* arriving now may belong to that run. A send issued into that window is therefore refused on
|
|
65
35
|
* arrival no matter how healthy it was, stays owed, and is re-sent on the next tick, while the
|
|
66
36
|
* Harness accepts and EXECUTES every copy: 4 executions from 4 send frames.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue-fallback.d.ts","sourceRoot":"","sources":["../src/queue-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH
|
|
1
|
+
{"version":3,"file":"queue-fallback.d.ts","sourceRoot":"","sources":["../src/queue-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,2BAA2B,CAAC,sBAAsB,EAAE,MAAM,EAAE,YAAY,SAAI,GAAG,OAAO,CAGrG;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,QAAsB,CAAC;AAsBnD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,sBAAsB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAE/F;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,uBAAuB,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;AAE3E,wBAAgB,uBAAuB,CAAC,uBAAuB,EAAE,OAAO,GAAG,uBAAuB,CAEjG;AAED,4FAA4F;AAC5F,eAAO,MAAM,mBAAmB,OAAQ,CAAC;AACzC,0FAA0F;AAC1F,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC;;;;;;;;;GASG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhF,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB;;oFAEgF;IAChF,qBAAqB,EAAE,OAAO,CAAC;IAC/B,mFAAmF;IACnF,YAAY,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,WAAW,EAAE,OAAO,CAAC;IACrB,0DAA0D;IAC1D,UAAU,EAAE,OAAO,CAAC;IACpB,yDAAyD;IACzD,WAAW,EAAE,OAAO,CAAC;IACrB,mFAAmF;IACnF,QAAQ,EAAE,OAAO,CAAC;IAClB,yFAAyF;IACzF,mBAAmB,EAAE,OAAO,CAAC;IAC7B,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,SAAS,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,2EAA2E;IAC3E,MAAM,EACF,UAAU,GACV,iBAAiB,GACjB,YAAY,GACZ,cAAc,GACd,WAAW,GACX,SAAS,GACT,kBAAkB,GAClB,0BAA0B,GAC1B,iBAAiB,GACjB,cAAc,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,aAAa,GAAG,gBAAgB,CAmBrE;AAED,0EAA0E;AAC1E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGzD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAI3D"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cotal-ai/connector-jcode",
|
|
3
3
|
"description": "Cotal connector for Jcode: a host-mode mesh peer driven through Jcode's Harness API bridge.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.68.0",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
"smol-toml": "^1.8.0"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@cotal-ai/connector-core": "0.
|
|
30
|
-
"@cotal-ai/core": "0.
|
|
29
|
+
"@cotal-ai/connector-core": "0.68.0",
|
|
30
|
+
"@cotal-ai/core": "0.68.0",
|
|
31
31
|
"@cotal-ai/smoke-kit": "0.0.0",
|
|
32
32
|
"esbuild": "^0.28.0",
|
|
33
33
|
"tsx": "^4.22.4",
|