@animalabs/agent-framework 0.26.2 → 0.27.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/README.md +56 -6
- package/dist/src/agent.d.ts +263 -22
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +531 -54
- package/dist/src/agent.js.map +1 -1
- package/dist/src/api/server.d.ts.map +1 -1
- package/dist/src/api/server.js +1 -2
- package/dist/src/api/server.js.map +1 -1
- package/dist/src/auto-continue.d.ts +33 -0
- package/dist/src/auto-continue.d.ts.map +1 -0
- package/dist/src/auto-continue.js +35 -0
- package/dist/src/auto-continue.js.map +1 -0
- package/dist/src/code-execution/isolate/scripts.d.ts +11 -0
- package/dist/src/code-execution/isolate/scripts.d.ts.map +1 -1
- package/dist/src/code-execution/isolate/scripts.js +5 -1
- package/dist/src/code-execution/isolate/scripts.js.map +1 -1
- package/dist/src/framework.d.ts +759 -129
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +3482 -928
- package/dist/src/framework.js.map +1 -1
- package/dist/src/gate/event-gate.d.ts +309 -46
- package/dist/src/gate/event-gate.d.ts.map +1 -1
- package/dist/src/gate/event-gate.js +2117 -395
- package/dist/src/gate/event-gate.js.map +1 -1
- package/dist/src/gate/index.d.ts +2 -2
- package/dist/src/gate/index.d.ts.map +1 -1
- package/dist/src/gate/index.js +1 -1
- package/dist/src/gate/index.js.map +1 -1
- package/dist/src/gate/recipe-reconcile.d.ts +103 -0
- package/dist/src/gate/recipe-reconcile.d.ts.map +1 -0
- package/dist/src/gate/recipe-reconcile.js +325 -0
- package/dist/src/gate/recipe-reconcile.js.map +1 -0
- package/dist/src/gate/types.d.ts +68 -8
- package/dist/src/gate/types.d.ts.map +1 -1
- package/dist/src/index.d.ts +6 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +5 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +433 -113
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +1152 -434
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/conversation-router.d.ts +16 -8
- package/dist/src/mcpl/conversation-router.d.ts.map +1 -1
- package/dist/src/mcpl/conversation-router.js +29 -15
- package/dist/src/mcpl/conversation-router.js.map +1 -1
- package/dist/src/mcpl/convert-block.d.ts.map +1 -1
- package/dist/src/mcpl/convert-block.js +14 -2
- package/dist/src/mcpl/convert-block.js.map +1 -1
- package/dist/src/mcpl/hook-orchestrator.d.ts +7 -1
- package/dist/src/mcpl/hook-orchestrator.d.ts.map +1 -1
- package/dist/src/mcpl/hook-orchestrator.js +32 -7
- package/dist/src/mcpl/hook-orchestrator.js.map +1 -1
- package/dist/src/mcpl/index.d.ts +5 -1
- package/dist/src/mcpl/index.d.ts.map +1 -1
- package/dist/src/mcpl/index.js +4 -0
- package/dist/src/mcpl/index.js.map +1 -1
- package/dist/src/mcpl/inference-router.d.ts +14 -2
- package/dist/src/mcpl/inference-router.d.ts.map +1 -1
- package/dist/src/mcpl/inference-router.js +73 -28
- package/dist/src/mcpl/inference-router.js.map +1 -1
- package/dist/src/mcpl/prose-grammar.d.ts +4 -0
- package/dist/src/mcpl/prose-grammar.d.ts.map +1 -1
- package/dist/src/mcpl/prose-grammar.js +6 -0
- package/dist/src/mcpl/prose-grammar.js.map +1 -1
- package/dist/src/mcpl/protocol-family.d.ts.map +1 -1
- package/dist/src/mcpl/protocol-family.js +3 -0
- package/dist/src/mcpl/protocol-family.js.map +1 -1
- package/dist/src/mcpl/push-coalescer.d.ts +20 -2
- package/dist/src/mcpl/push-coalescer.d.ts.map +1 -1
- package/dist/src/mcpl/push-coalescer.js +33 -11
- package/dist/src/mcpl/push-coalescer.js.map +1 -1
- package/dist/src/mcpl/reference-fetcher.d.ts +63 -42
- package/dist/src/mcpl/reference-fetcher.d.ts.map +1 -1
- package/dist/src/mcpl/reference-fetcher.js +177 -145
- package/dist/src/mcpl/reference-fetcher.js.map +1 -1
- package/dist/src/mcpl/references.d.ts +380 -46
- package/dist/src/mcpl/references.d.ts.map +1 -1
- package/dist/src/mcpl/references.js +736 -77
- package/dist/src/mcpl/references.js.map +1 -1
- package/dist/src/mcpl/server-connection.d.ts +82 -3
- package/dist/src/mcpl/server-connection.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.js +132 -7
- package/dist/src/mcpl/server-connection.js.map +1 -1
- package/dist/src/mcpl/tool-lifecycle.d.ts +11 -0
- package/dist/src/mcpl/tool-lifecycle.d.ts.map +1 -1
- package/dist/src/mcpl/tool-lifecycle.js +21 -0
- package/dist/src/mcpl/tool-lifecycle.js.map +1 -1
- package/dist/src/mcpl/tool-presence.d.ts +259 -0
- package/dist/src/mcpl/tool-presence.d.ts.map +1 -0
- package/dist/src/mcpl/tool-presence.js +628 -0
- package/dist/src/mcpl/tool-presence.js.map +1 -0
- package/dist/src/mcpl/tool-result-normalize.d.ts +9 -3
- package/dist/src/mcpl/tool-result-normalize.d.ts.map +1 -1
- package/dist/src/mcpl/tool-result-normalize.js +14 -6
- package/dist/src/mcpl/tool-result-normalize.js.map +1 -1
- package/dist/src/mcpl/tool-signature.d.ts +39 -0
- package/dist/src/mcpl/tool-signature.d.ts.map +1 -0
- package/dist/src/mcpl/tool-signature.js +292 -0
- package/dist/src/mcpl/tool-signature.js.map +1 -0
- package/dist/src/mcpl/toolset-host.d.ts +200 -0
- package/dist/src/mcpl/toolset-host.d.ts.map +1 -0
- package/dist/src/mcpl/toolset-host.js +621 -0
- package/dist/src/mcpl/toolset-host.js.map +1 -0
- package/dist/src/mcpl/toolsets-module.d.ts +80 -0
- package/dist/src/mcpl/toolsets-module.d.ts.map +1 -0
- package/dist/src/mcpl/toolsets-module.js +431 -0
- package/dist/src/mcpl/toolsets-module.js.map +1 -0
- package/dist/src/mcpl/transport.d.ts +2 -2
- package/dist/src/mcpl/transport.d.ts.map +1 -1
- package/dist/src/mcpl/transport.js +3 -2
- package/dist/src/mcpl/transport.js.map +1 -1
- package/dist/src/mcpl/types.d.ts +21 -1
- package/dist/src/mcpl/types.d.ts.map +1 -1
- package/dist/src/mcpl/types.js.map +1 -1
- package/dist/src/mcpl/visible-content.d.ts +7 -9
- package/dist/src/mcpl/visible-content.d.ts.map +1 -1
- package/dist/src/mcpl/visible-content.js +21 -9
- package/dist/src/mcpl/visible-content.js.map +1 -1
- package/dist/src/module-registry.d.ts +23 -8
- package/dist/src/module-registry.d.ts.map +1 -1
- package/dist/src/module-registry.js +68 -15
- package/dist/src/module-registry.js.map +1 -1
- package/dist/src/modules/discord/index.js +1 -1
- package/dist/src/modules/discord/index.js.map +1 -1
- package/dist/src/modules/history/index.d.ts +2 -1
- package/dist/src/modules/history/index.d.ts.map +1 -1
- package/dist/src/modules/history/index.js +51 -17
- package/dist/src/modules/history/index.js.map +1 -1
- package/dist/src/modules/history/semantic.d.ts +108 -6
- package/dist/src/modules/history/semantic.d.ts.map +1 -1
- package/dist/src/modules/history/semantic.js +273 -57
- package/dist/src/modules/history/semantic.js.map +1 -1
- package/dist/src/modules/workspace/direct-write.d.ts +181 -0
- package/dist/src/modules/workspace/direct-write.d.ts.map +1 -0
- package/dist/src/modules/workspace/direct-write.js +384 -0
- package/dist/src/modules/workspace/direct-write.js.map +1 -0
- package/dist/src/modules/workspace/edit-text.d.ts +26 -12
- package/dist/src/modules/workspace/edit-text.d.ts.map +1 -1
- package/dist/src/modules/workspace/edit-text.js +58 -28
- package/dist/src/modules/workspace/edit-text.js.map +1 -1
- package/dist/src/modules/workspace/effects.d.ts +10 -0
- package/dist/src/modules/workspace/effects.d.ts.map +1 -1
- package/dist/src/modules/workspace/effects.js +1 -1
- package/dist/src/modules/workspace/effects.js.map +1 -1
- package/dist/src/modules/workspace/index.d.ts +246 -27
- package/dist/src/modules/workspace/index.d.ts.map +1 -1
- package/dist/src/modules/workspace/index.js +1216 -236
- package/dist/src/modules/workspace/index.js.map +1 -1
- package/dist/src/modules/workspace/read-page.d.ts +41 -0
- package/dist/src/modules/workspace/read-page.d.ts.map +1 -0
- package/dist/src/modules/workspace/read-page.js +213 -0
- package/dist/src/modules/workspace/read-page.js.map +1 -0
- package/dist/src/modules/workspace/result-text.d.ts +67 -0
- package/dist/src/modules/workspace/result-text.d.ts.map +1 -0
- package/dist/src/modules/workspace/result-text.js +94 -0
- package/dist/src/modules/workspace/result-text.js.map +1 -0
- package/dist/src/modules/workspace/text.d.ts +29 -12
- package/dist/src/modules/workspace/text.d.ts.map +1 -1
- package/dist/src/modules/workspace/text.js +35 -33
- package/dist/src/modules/workspace/text.js.map +1 -1
- package/dist/src/modules/workspace/types.d.ts +41 -17
- package/dist/src/modules/workspace/types.d.ts.map +1 -1
- package/dist/src/modules/workspace/types.js.map +1 -1
- package/dist/src/sent-rows.d.ts +59 -0
- package/dist/src/sent-rows.d.ts.map +1 -0
- package/dist/src/sent-rows.js +145 -0
- package/dist/src/sent-rows.js.map +1 -0
- package/dist/src/silent-heartbeat.d.ts +17 -10
- package/dist/src/silent-heartbeat.d.ts.map +1 -1
- package/dist/src/silent-heartbeat.js.map +1 -1
- package/dist/src/stable-hash.d.ts +3 -0
- package/dist/src/stable-hash.d.ts.map +1 -0
- package/dist/src/stable-hash.js +15 -0
- package/dist/src/stable-hash.js.map +1 -0
- package/dist/src/stored-injections.d.ts +99 -0
- package/dist/src/stored-injections.d.ts.map +1 -0
- package/dist/src/stored-injections.js +106 -0
- package/dist/src/stored-injections.js.map +1 -0
- package/dist/src/text-as-stored.d.ts +4 -3
- package/dist/src/text-as-stored.d.ts.map +1 -1
- package/dist/src/text-as-stored.js +4 -3
- package/dist/src/text-as-stored.js.map +1 -1
- package/dist/src/thinking-drops.d.ts +81 -0
- package/dist/src/thinking-drops.d.ts.map +1 -0
- package/dist/src/thinking-drops.js +103 -0
- package/dist/src/thinking-drops.js.map +1 -0
- package/dist/src/tool-image-ledger.d.ts +9 -8
- package/dist/src/tool-image-ledger.d.ts.map +1 -1
- package/dist/src/tool-image-ledger.js +9 -8
- package/dist/src/tool-image-ledger.js.map +1 -1
- package/dist/src/tool-presentation.d.ts.map +1 -1
- package/dist/src/tool-presentation.js +3 -1
- package/dist/src/tool-presentation.js.map +1 -1
- package/dist/src/tool-result-guard.d.ts +4 -2
- package/dist/src/tool-result-guard.d.ts.map +1 -1
- package/dist/src/tool-result-guard.js +21 -6
- package/dist/src/tool-result-guard.js.map +1 -1
- package/dist/src/tool-result-history.d.ts +176 -24
- package/dist/src/tool-result-history.d.ts.map +1 -1
- package/dist/src/tool-result-history.js +411 -91
- package/dist/src/tool-result-history.js.map +1 -1
- package/dist/src/tune-out/coordinator.d.ts +17 -9
- package/dist/src/tune-out/coordinator.d.ts.map +1 -1
- package/dist/src/tune-out/coordinator.js +84 -37
- package/dist/src/tune-out/coordinator.js.map +1 -1
- package/dist/src/types/agent.d.ts +186 -7
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/events.d.ts +15 -1
- package/dist/src/types/events.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +24 -3
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/module.d.ts +90 -7
- package/dist/src/types/module.d.ts.map +1 -1
- package/dist/src/types/trace.d.ts +57 -2
- package/dist/src/types/trace.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/agent.ts +593 -60
- package/src/api/server.ts +1 -2
- package/src/auto-continue.ts +42 -0
- package/src/code-execution/isolate/scripts.ts +11 -3
- package/src/framework.ts +3601 -967
- package/src/gate/event-gate.ts +2315 -389
- package/src/gate/index.ts +2 -1
- package/src/gate/recipe-reconcile.ts +355 -0
- package/src/gate/types.ts +70 -8
- package/src/index.ts +7 -4
- package/src/mcpl/channel-registry.ts +1220 -467
- package/src/mcpl/conversation-router.ts +34 -16
- package/src/mcpl/convert-block.ts +14 -1
- package/src/mcpl/hook-orchestrator.ts +33 -6
- package/src/mcpl/index.ts +6 -1
- package/src/mcpl/inference-router.ts +79 -34
- package/src/mcpl/prose-grammar.ts +7 -0
- package/src/mcpl/protocol-family.ts +2 -0
- package/src/mcpl/push-coalescer.ts +51 -13
- package/src/mcpl/reference-fetcher.ts +201 -162
- package/src/mcpl/references.ts +851 -77
- package/src/mcpl/server-connection.ts +145 -7
- package/src/mcpl/tool-lifecycle.ts +21 -0
- package/src/mcpl/tool-presence.ts +650 -0
- package/src/mcpl/tool-result-normalize.ts +18 -6
- package/src/mcpl/tool-signature.ts +285 -0
- package/src/mcpl/toolset-host.ts +637 -0
- package/src/mcpl/toolsets-module.ts +451 -0
- package/src/mcpl/transport.ts +3 -2
- package/src/mcpl/types.ts +22 -1
- package/src/mcpl/visible-content.ts +22 -9
- package/src/module-registry.ts +77 -24
- package/src/modules/discord/index.ts +1 -1
- package/src/modules/history/index.ts +48 -18
- package/src/modules/history/semantic.ts +308 -54
- package/src/modules/workspace/direct-write.ts +425 -0
- package/src/modules/workspace/edit-text.ts +82 -35
- package/src/modules/workspace/effects.ts +1 -1
- package/src/modules/workspace/index.ts +1274 -241
- package/src/modules/workspace/read-page.ts +222 -0
- package/src/modules/workspace/result-text.ts +119 -0
- package/src/modules/workspace/text.ts +58 -32
- package/src/modules/workspace/types.ts +41 -17
- package/src/sent-rows.ts +162 -0
- package/src/silent-heartbeat.ts +17 -10
- package/src/stable-hash.ts +14 -0
- package/src/stored-injections.ts +131 -0
- package/src/text-as-stored.ts +4 -3
- package/src/thinking-drops.ts +141 -0
- package/src/tool-image-ledger.ts +9 -8
- package/src/tool-presentation.ts +3 -1
- package/src/tool-result-guard.ts +19 -6
- package/src/tool-result-history.ts +471 -90
- package/src/tune-out/coordinator.ts +80 -37
- package/src/types/agent.ts +189 -7
- package/src/types/events.ts +15 -1
- package/src/types/framework.ts +21 -3
- package/src/types/module.ts +86 -7
- package/src/types/trace.ts +58 -2
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* Spec reference: Section 11 (Server-Initiated Inference).
|
|
9
9
|
*/
|
|
10
10
|
import { McplFeatureSetError } from './feature-set-manager.js';
|
|
11
|
+
import { logValue } from './log-value.js';
|
|
11
12
|
// ============================================================================
|
|
12
13
|
// Wildcard matching (same logic as feature-set-manager)
|
|
13
14
|
// ============================================================================
|
|
@@ -132,6 +133,10 @@ export class InferenceRouter {
|
|
|
132
133
|
featureSetManager;
|
|
133
134
|
routingPolicy;
|
|
134
135
|
emitTraceFn;
|
|
136
|
+
/** The refusals for want of a model that have been logged: one line per
|
|
137
|
+
* server with no policy, and per server and feature set with one, so a
|
|
138
|
+
* server that keeps asking doesn't flood the operator's log. */
|
|
139
|
+
loggedRefusals = new Set();
|
|
135
140
|
constructor(membrane, hookOrchestrator, featureSetManager, routingPolicy, emitTraceFn) {
|
|
136
141
|
this.membrane = membrane;
|
|
137
142
|
this.hookOrchestrator = hookOrchestrator;
|
|
@@ -144,7 +149,7 @@ export class InferenceRouter {
|
|
|
144
149
|
*
|
|
145
150
|
* 1. Validate feature set
|
|
146
151
|
* 2. Check loop prevention (reject if inside a hook)
|
|
147
|
-
* 3. Resolve model from routing policy
|
|
152
|
+
* 3. Resolve model from routing policy, refusing when it names none
|
|
148
153
|
* 4. Build membrane request
|
|
149
154
|
* 5. Run inference, streaming its visible text as chunks when asked
|
|
150
155
|
* 6. Answer with the result, or with the error for any ending that isn't
|
|
@@ -168,8 +173,56 @@ export class InferenceRouter {
|
|
|
168
173
|
responder.respondError(-32600, 'Cannot process inference request during hook execution');
|
|
169
174
|
return;
|
|
170
175
|
}
|
|
171
|
-
//
|
|
176
|
+
// Streaming needs a way to send chunks and an id to tag them with;
|
|
177
|
+
// without either, the request is answered whole.
|
|
178
|
+
const sendChunk = params.stream ? responder.sendChunk?.bind(responder) : undefined;
|
|
179
|
+
const chunkRequestId = sendChunk ? responder.requestId : undefined;
|
|
180
|
+
const streamed = chunkRequestId != null;
|
|
181
|
+
// 3. Resolve model. With no routing policy, or one that names no model
|
|
182
|
+
// for this feature set, the operator has chosen no model for this
|
|
183
|
+
// server's inference: refused rather than guessed, since a model picked
|
|
184
|
+
// here would run, on whatever credentials and at whatever price it
|
|
185
|
+
// carries, for a server the operator never chose it for. The answer is
|
|
186
|
+
// -32603, the code the router answers a failed inference with, as it
|
|
187
|
+
// answered this request when it reached the provider with no model; the
|
|
188
|
+
// server's grant can still list inferenceRequest, so not -32002.
|
|
172
189
|
const model = this.resolveModel(params.featureSet, params.conversationId);
|
|
190
|
+
if (model === undefined) {
|
|
191
|
+
const policy = Boolean(this.routingPolicy);
|
|
192
|
+
// One reason, quoted for where it goes: JSON for the server, logValue
|
|
193
|
+
// for the host log.
|
|
194
|
+
const reason = (quote) => policy
|
|
195
|
+
? `the inference routing policy (inferenceRouting) names no model for feature set ${quote(params.featureSet)}`
|
|
196
|
+
: 'the host sets no inference routing policy (inferenceRouting)';
|
|
197
|
+
const message = `inference/request refused: ${reason(JSON.stringify)}, so the host has no model to run it on; ` +
|
|
198
|
+
"it stays refused until the host's operator configures one";
|
|
199
|
+
// Logged once per server with no policy, and once per server and
|
|
200
|
+
// feature set with one, since each feature set the policy misses is
|
|
201
|
+
// its own entry to add; validateInbound (step 1) bounds feature sets
|
|
202
|
+
// to those the server declares.
|
|
203
|
+
const key = JSON.stringify(policy ? [serverId, params.featureSet] : [serverId]);
|
|
204
|
+
if (!this.loggedRefusals.has(key)) {
|
|
205
|
+
this.loggedRefusals.add(key);
|
|
206
|
+
console.error(`[mcpl] ${logValue(serverId)}: inference/request refused: ${reason(logValue)}; ` +
|
|
207
|
+
(policy
|
|
208
|
+
? 'give it a default, or a byFeature or wildcards entry for that feature set. ' +
|
|
209
|
+
'This line prints once per server and feature set'
|
|
210
|
+
: 'set inferenceRouting in the framework config to choose the model server-initiated inference runs on. ' +
|
|
211
|
+
'This line prints once per server') +
|
|
212
|
+
'; later refusals are answered and traced but not logged.');
|
|
213
|
+
}
|
|
214
|
+
// The failure a trace watcher saw when this request failed at the
|
|
215
|
+
// provider, still seen; no inference_start, since none started.
|
|
216
|
+
this.emitTraceFn({
|
|
217
|
+
type: 'mcpl:inference_fail',
|
|
218
|
+
serverId,
|
|
219
|
+
model: null,
|
|
220
|
+
error: message,
|
|
221
|
+
streamed,
|
|
222
|
+
});
|
|
223
|
+
responder.respondError(-32603, message);
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
173
226
|
// Emit trace: inference start
|
|
174
227
|
this.emitTraceFn({
|
|
175
228
|
type: 'mcpl:inference_start',
|
|
@@ -191,11 +244,6 @@ export class InferenceRouter {
|
|
|
191
244
|
temperature: params.preferences?.temperature,
|
|
192
245
|
},
|
|
193
246
|
};
|
|
194
|
-
// Streaming needs a way to send chunks and an id to tag them with;
|
|
195
|
-
// without either, the request is answered whole.
|
|
196
|
-
const sendChunk = params.stream ? responder.sendChunk?.bind(responder) : undefined;
|
|
197
|
-
const chunkRequestId = sendChunk ? responder.requestId : undefined;
|
|
198
|
-
const streamed = chunkRequestId != null;
|
|
199
247
|
try {
|
|
200
248
|
// 5. Run inference. Both modes end in membrane's response, and one
|
|
201
249
|
// builder makes the result from it.
|
|
@@ -244,30 +292,27 @@ export class InferenceRouter {
|
|
|
244
292
|
* 2. Exact feature set match
|
|
245
293
|
* 3. Wildcard pattern match (first match wins)
|
|
246
294
|
* 4. Default from policy
|
|
247
|
-
*
|
|
295
|
+
*
|
|
296
|
+
* Only an entry naming a model counts: one that is empty or not a string
|
|
297
|
+
* names none and is passed over, as a missing one is. That includes what a
|
|
298
|
+
* server-sent conversation id or feature set such as `constructor` or
|
|
299
|
+
* `__proto__` finds on Object.prototype, which is never a string. A
|
|
300
|
+
* conversation id that is falsy reads no override.
|
|
301
|
+
*
|
|
302
|
+
* Undefined with no policy, or when none of these names a model: the
|
|
303
|
+
* request is then refused.
|
|
248
304
|
*/
|
|
249
305
|
resolveModel(featureSet, conversationId) {
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
// Check per-conversation override
|
|
254
|
-
if (conversationId && this.routingPolicy.overrides?.[conversationId]) {
|
|
255
|
-
return this.routingPolicy.overrides[conversationId];
|
|
256
|
-
}
|
|
257
|
-
// Check exact feature set match
|
|
258
|
-
if (this.routingPolicy.byFeature?.[featureSet]) {
|
|
259
|
-
return this.routingPolicy.byFeature[featureSet];
|
|
260
|
-
}
|
|
261
|
-
// Check wildcard patterns
|
|
262
|
-
if (this.routingPolicy.wildcards) {
|
|
263
|
-
for (const [pattern, matchedModel] of Object.entries(this.routingPolicy.wildcards)) {
|
|
264
|
-
if (wildcardMatch(pattern, featureSet)) {
|
|
265
|
-
return matchedModel;
|
|
266
|
-
}
|
|
267
|
-
}
|
|
306
|
+
const policy = this.routingPolicy;
|
|
307
|
+
if (!policy) {
|
|
308
|
+
return undefined;
|
|
268
309
|
}
|
|
269
|
-
|
|
270
|
-
return
|
|
310
|
+
const named = (value) => typeof value === 'string' && value !== '' ? value : undefined;
|
|
311
|
+
return (conversationId ? named(policy.overrides?.[conversationId]) : undefined)
|
|
312
|
+
?? named(policy.byFeature?.[featureSet])
|
|
313
|
+
// First wildcard that matches and names a model.
|
|
314
|
+
?? Object.entries(policy.wildcards ?? {}).find(([pattern, m]) => named(m) && wildcardMatch(pattern, featureSet))?.[1]
|
|
315
|
+
?? named(policy.default);
|
|
271
316
|
}
|
|
272
317
|
// ==========================================================================
|
|
273
318
|
// Private: Streaming
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inference-router.js","sourceRoot":"","sources":["../../../src/mcpl/inference-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAkBH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"inference-router.js","sourceRoot":"","sources":["../../../src/mcpl/inference-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,10 @@ export interface ProsePrefix {
|
|
|
17
17
|
continueTurn: boolean;
|
|
18
18
|
body: string;
|
|
19
19
|
}
|
|
20
|
+
/** Whether a `>>` (or `>>>`) prefix line reads `name` as a target: one token,
|
|
21
|
+
* and not `skip_reply`, which the line reads as private speech. For a name
|
|
22
|
+
* offered to an agent to write after `>>`. */
|
|
23
|
+
export declare function isProseTargetToken(name: string): boolean;
|
|
20
24
|
/** A REAL prefix line: `>>` immediately followed by a target token. */
|
|
21
25
|
export declare const PROSE_PREFIX_LINE: RegExp;
|
|
22
26
|
export declare function parseProsePrefix(text: string): ProsePrefix;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prose-grammar.d.ts","sourceRoot":"","sources":["../../../src/mcpl/prose-grammar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,QAAU,CAAC;AAEzC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAc1D;AAED;4CAC4C;AAC5C,eAAO,MAAM,wBAAwB,QAAiB,CAAC;AAEvD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAQhE"}
|
|
1
|
+
{"version":3,"file":"prose-grammar.d.ts","sourceRoot":"","sources":["../../../src/mcpl/prose-grammar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;+CAE+C;AAC/C,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,QAAU,CAAC;AAEzC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAc1D;AAED;4CAC4C;AAC5C,eAAO,MAAM,wBAAwB,QAAiB,CAAC;AAEvD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAQhE"}
|
|
@@ -11,6 +11,12 @@
|
|
|
11
11
|
* A line's `>>` counts only when immediately followed by a target token
|
|
12
12
|
* (`>> quoted arrow` stays body text).
|
|
13
13
|
*/
|
|
14
|
+
/** Whether a `>>` (or `>>>`) prefix line reads `name` as a target: one token,
|
|
15
|
+
* and not `skip_reply`, which the line reads as private speech. For a name
|
|
16
|
+
* offered to an agent to write after `>>`. */
|
|
17
|
+
export function isProseTargetToken(name) {
|
|
18
|
+
return /^\S+$/.test(name) && name !== 'skip_reply';
|
|
19
|
+
}
|
|
14
20
|
/** A REAL prefix line: `>>` immediately followed by a target token. */
|
|
15
21
|
export const PROSE_PREFIX_LINE = /^>>\S/;
|
|
16
22
|
export function parseProsePrefix(text) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prose-grammar.js","sourceRoot":"","sources":["../../../src/mcpl/prose-grammar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH,uEAAuE;AACvE,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAEzC,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,MAAM,CAAC,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IACrB,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACrC,uEAAuE;IACvE,6EAA6E;IAC7E,4EAA4E;IAC5E,4DAA4D;IAC5D,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACjD,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC;AAED;4CAC4C;AAC5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,CAAC,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IACrB,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,MAAM,KAAK,YAAY;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC5E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC"}
|
|
1
|
+
{"version":3,"file":"prose-grammar.js","sourceRoot":"","sources":["../../../src/mcpl/prose-grammar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH;;+CAE+C;AAC/C,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,YAAY,CAAC;AACrD,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAEzC,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,MAAM,CAAC,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IACrB,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACrC,uEAAuE;IACvE,6EAA6E;IAC7E,4EAA4E;IAC5E,4DAA4D;IAC5D,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACjD,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC;AAED;4CAC4C;AAC5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,CAAC,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IACrB,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,MAAM,KAAK,YAAY;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC5E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol-family.d.ts","sourceRoot":"","sources":["../../../src/mcpl/protocol-family.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"protocol-family.d.ts","sourceRoot":"","sources":["../../../src/mcpl/protocol-family.ts"],"names":[],"mappings":"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"}
|
|
@@ -622,6 +622,9 @@ export function mcplPolicyGrants(config) {
|
|
|
622
622
|
const grants = [];
|
|
623
623
|
if (isEffective(config.allowHostCommands))
|
|
624
624
|
grants.push('allowHostCommands');
|
|
625
|
+
// RFC-014 tool hints are an MCPL advertisement.
|
|
626
|
+
if (config.toolHints === true)
|
|
627
|
+
grants.push('toolHints');
|
|
625
628
|
// An allow-list, except that a pattern matching a path denied by default
|
|
626
629
|
// grants it (computeGrant's explicitlyEnabled), named by the path.
|
|
627
630
|
const enabled = config.enabledCapabilities;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol-family.js","sourceRoot":"","sources":["../../../src/mcpl/protocol-family.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol-family.js","sourceRoot":"","sources":["../../../src/mcpl/protocol-family.ts"],"names":[],"mappings":"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"}
|
|
@@ -127,6 +127,14 @@ interface DeferredBatch<E> {
|
|
|
127
127
|
latest: CoalescedOccurrence<E>;
|
|
128
128
|
notices: DeferredNotice[];
|
|
129
129
|
dropped: number;
|
|
130
|
+
/** Every notice folded into the batch, a dropped one included, and a
|
|
131
|
+
* plain occurrence a notice displaced unread (Occupant.ambient), was
|
|
132
|
+
* tagged `chat:ambient` (RFC-001), so its render asks nothing of the agent
|
|
133
|
+
* (CoalescerHost.wakeToRead). Snapshots carry it. A batch restored
|
|
134
|
+
* without it, from a snapshot written before it existed or from an
|
|
135
|
+
* acceptance receipt, which doesn't carry it, reads as not all ambient:
|
|
136
|
+
* the side that keeps a wake. */
|
|
137
|
+
allAmbient?: true;
|
|
130
138
|
/** Set on a batch restored from a snapshot whose render may have started. */
|
|
131
139
|
noRender?: boolean;
|
|
132
140
|
/** The batch opened on the agent's first view of its subject: a fresh
|
|
@@ -181,6 +189,12 @@ interface Occupant {
|
|
|
181
189
|
* render that joins a run finds a version placed. In memory only: a
|
|
182
190
|
* snapshot's occupant comes back as read. */
|
|
183
191
|
firstView?: true;
|
|
192
|
+
/** A plain occurrence its server tagged `chat:ambient`. A notice that
|
|
193
|
+
* displaces it unread stands its batch's render in its place, so that
|
|
194
|
+
* render is all ambient only if this was (DeferredBatch.allAmbient). In
|
|
195
|
+
* memory only, as `firstView`: a snapshot's occupant comes back as read,
|
|
196
|
+
* and only an unread one is displaced. */
|
|
197
|
+
ambient?: true;
|
|
184
198
|
/** The run's earlier renders, oldest first, each placed ahead of this one. */
|
|
185
199
|
before?: Array<Omit<Occupant, 'before'>>;
|
|
186
200
|
}
|
|
@@ -234,6 +248,7 @@ export interface CoalescingSnapshot {
|
|
|
234
248
|
dropped: number;
|
|
235
249
|
rendering?: boolean;
|
|
236
250
|
firstView?: true;
|
|
251
|
+
allAmbient?: true;
|
|
237
252
|
};
|
|
238
253
|
}>;
|
|
239
254
|
}
|
|
@@ -290,8 +305,11 @@ export interface CoalescerHost<E> {
|
|
|
290
305
|
/** Queue an ordinary push wake for `agent`, under the batch's own wake
|
|
291
306
|
* policy, to read a render of the batch placed in its deferred queue that
|
|
292
307
|
* no request consumed, at `deferredId`. It carries no subject, so the
|
|
293
|
-
* subject's other wakes, and later withdrawals of them, leave it.
|
|
294
|
-
|
|
308
|
+
* subject's other wakes, and later withdrawals of them, leave it.
|
|
309
|
+
* `allAmbient`: every notice the render stands for was tagged
|
|
310
|
+
* `chat:ambient` (DeferredBatch.allAmbient), so the wake is marked
|
|
311
|
+
* ambient. */
|
|
312
|
+
wakeToRead(occurrence: CoalescedOccurrence<E>, agent: string, deferredId?: string, allAmbient?: boolean): Promise<void>;
|
|
295
313
|
/** Withdraw unstarted wakes whose sole cause is this subject. */
|
|
296
314
|
cancelWake(subject: string): void;
|
|
297
315
|
/** The batch's audience still holds the authority it was admitted under. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push-coalescer.d.ts","sourceRoot":"","sources":["../../../src/mcpl/push-coalescer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"push-coalescer.d.ts","sourceRoot":"","sources":["../../../src/mcpl/push-coalescer.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,11 @@ export class EmptyContentError extends CoalesceError {
|
|
|
41
41
|
this.name = 'EmptyContentError';
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
+
/** An occupant's `ambient` mark, for a plain occurrence its server tagged
|
|
45
|
+
* `chat:ambient`. */
|
|
46
|
+
function ambientOccupant(occurrence) {
|
|
47
|
+
return occurrence.tags?.includes('chat:ambient') === true ? { ambient: true } : {};
|
|
48
|
+
}
|
|
44
49
|
/** The occupant holding a run's renders, given oldest first: the newest,
|
|
45
50
|
* carrying the rest as `before`. */
|
|
46
51
|
function runOf(members) {
|
|
@@ -119,7 +124,8 @@ export function validateCoalescedContent(content, options = {}) {
|
|
|
119
124
|
/**
|
|
120
125
|
* Whether the converter (`convertBlock` in convert-block.ts, which every lane
|
|
121
126
|
* uses) shows a block as itself, its text or its image or
|
|
122
|
-
* audio source
|
|
127
|
+
* audio source (for MCP's embedded resource, its contents'), or as a
|
|
128
|
+
* reference stub, and not as a placeholder: an
|
|
123
129
|
* unrecognized block, a no-data or no-media-type one, withheld inline data,
|
|
124
130
|
* or a text block whose text isn't a string. This follows its branches in
|
|
125
131
|
* their order.
|
|
@@ -127,8 +133,13 @@ export function validateCoalescedContent(content, options = {}) {
|
|
|
127
133
|
function showsAsItself(b) {
|
|
128
134
|
if (b.type === 'text')
|
|
129
135
|
return typeof b.text === 'string';
|
|
130
|
-
if (b.type === 'resource')
|
|
131
|
-
|
|
136
|
+
if (b.type === 'resource' || b.type === 'resource_link') {
|
|
137
|
+
const c = classifyBlock(b);
|
|
138
|
+
// MCP's embedded resource shows as the block its contents make.
|
|
139
|
+
if (c.kind === 'embedded')
|
|
140
|
+
return c.contents.kind === 'block' && showsAsItself(c.contents.block);
|
|
141
|
+
return c.kind === 'reference';
|
|
142
|
+
}
|
|
132
143
|
if (b.type !== 'image' && b.type !== 'audio')
|
|
133
144
|
return false;
|
|
134
145
|
if (isInlineContradiction(b))
|
|
@@ -552,7 +563,7 @@ export class PushCoalescer {
|
|
|
552
563
|
// context that read a version, never a new one (§3.2).
|
|
553
564
|
const placement = await this.deliver({ ...occurrence, deliverTo: state.audienceAgent });
|
|
554
565
|
if (placement) {
|
|
555
|
-
state.occupant = { eventId: occurrence.eventId, placement };
|
|
566
|
+
state.occupant = { eventId: occurrence.eventId, placement, ...ambientOccupant(occurrence) };
|
|
556
567
|
state.audienceAgent = placement.agent;
|
|
557
568
|
}
|
|
558
569
|
return 'noted';
|
|
@@ -576,7 +587,7 @@ export class PushCoalescer {
|
|
|
576
587
|
...occurrence, deliverTo: prior.placement.agent,
|
|
577
588
|
...(firstView ? { firstView: true } : {}),
|
|
578
589
|
});
|
|
579
|
-
state.occupant = placement ? { eventId: occurrence.eventId, placement, ...(firstView ? { firstView: true } : {}) } : undefined;
|
|
590
|
+
state.occupant = placement ? { eventId: occurrence.eventId, placement, ...(firstView ? { firstView: true } : {}), ...ambientOccupant(occurrence) } : undefined;
|
|
580
591
|
if (placement)
|
|
581
592
|
state.audienceAgent = placement.agent;
|
|
582
593
|
return 'replaced';
|
|
@@ -592,7 +603,7 @@ export class PushCoalescer {
|
|
|
592
603
|
// batch's place (a batch's own first view ends with the subject's).
|
|
593
604
|
const firstView = hadBatch ? batchFirstView && state.history === 'none' : outcome === 'first' && !state.firstViewEnded;
|
|
594
605
|
const placement = await this.deliver(hadBatch && firstView ? { ...occurrence, firstView: true } : occurrence);
|
|
595
|
-
state.occupant = placement ? { eventId: occurrence.eventId, placement, ...(firstView ? { firstView: true } : {}) } : undefined;
|
|
606
|
+
state.occupant = placement ? { eventId: occurrence.eventId, placement, ...(firstView ? { firstView: true } : {}), ...ambientOccupant(occurrence) } : undefined;
|
|
596
607
|
if (placement)
|
|
597
608
|
state.audienceAgent = placement.agent;
|
|
598
609
|
return outcome;
|
|
@@ -607,6 +618,10 @@ export class PushCoalescer {
|
|
|
607
618
|
// batches already open too). A render still under way is weighed when a
|
|
608
619
|
// batch's first delivery is.
|
|
609
620
|
let firstView = state.history === 'none' && !state.firstViewEnded;
|
|
621
|
+
// Whether every notice the batch's render stands for was tagged
|
|
622
|
+
// `chat:ambient` (DeferredBatch.allAmbient): this one, and a plain
|
|
623
|
+
// occurrence it displaces unread, whose place the render takes.
|
|
624
|
+
let ambient = occurrence.tags?.includes('chat:ambient') === true;
|
|
610
625
|
if (occupantUnread && state.occupant?.rendered) {
|
|
611
626
|
// An unread render is a delta the next render builds on (§5.2), not a
|
|
612
627
|
// plain occurrence: it stays, and the batch follows its agent (§3.2), so
|
|
@@ -619,6 +634,8 @@ export class PushCoalescer {
|
|
|
619
634
|
// — in the audience that held the plain occurrence (§3.2).
|
|
620
635
|
if (!this.occupantLeaves(state, state.occupant))
|
|
621
636
|
firstView = false;
|
|
637
|
+
if (state.occupant.ambient !== true)
|
|
638
|
+
ambient = false;
|
|
622
639
|
this.host.audit({ kind: 'displaced', subject, eventId: state.occupant.eventId });
|
|
623
640
|
if (this.host.remove(state.occupant.placement)) {
|
|
624
641
|
outcome = 'replaced';
|
|
@@ -644,11 +661,13 @@ export class PushCoalescer {
|
|
|
644
661
|
state.batch.dropped++;
|
|
645
662
|
}
|
|
646
663
|
state.batch.latest = occurrence;
|
|
664
|
+
if (!ambient)
|
|
665
|
+
delete state.batch.allAmbient;
|
|
647
666
|
outcome = 'replaced';
|
|
648
667
|
}
|
|
649
668
|
else {
|
|
650
669
|
// Rule 1: a notice during a render opens a NEW batch ("first").
|
|
651
|
-
state.batch = { latest: occurrence, notices: [notice], dropped: 0, ...(firstView ? { firstView: true } : {}) };
|
|
670
|
+
state.batch = { latest: occurrence, notices: [notice], dropped: 0, ...(firstView ? { firstView: true } : {}), ...(ambient ? { allAmbient: true } : {}) };
|
|
652
671
|
}
|
|
653
672
|
await this.host.wakeForBatch(occurrence);
|
|
654
673
|
return outcome;
|
|
@@ -882,7 +901,9 @@ export class PushCoalescer {
|
|
|
882
901
|
// agent's wake for this batch; give it an ordinary wake, as any
|
|
883
902
|
// delivery during its turn has, beside any wakes a newer batch has,
|
|
884
903
|
// so that its next turn reads the content (the wake starts no turn
|
|
885
|
-
// once
|
|
904
|
+
// once a request that carried it is answered and, if the wake
|
|
905
|
+
// carries a channel and the batch wasn't all ambient, the agent has
|
|
906
|
+
// published there since, or once it's removed).
|
|
886
907
|
// The run's renders keep their own records, whatever else an
|
|
887
908
|
// occupant carries, a first view's mark included.
|
|
888
909
|
let before;
|
|
@@ -899,7 +920,7 @@ export class PushCoalescer {
|
|
|
899
920
|
await this.host.wakeForBatch(state.batch.latest);
|
|
900
921
|
}
|
|
901
922
|
state.audienceAgent = placement.agent;
|
|
902
|
-
await this.host.wakeToRead(occurrence, placement.agent, placement.deferredId);
|
|
923
|
+
await this.host.wakeToRead(occurrence, placement.agent, placement.deferredId, batch.allAmbient === true);
|
|
903
924
|
return;
|
|
904
925
|
}
|
|
905
926
|
// The materialized occurrence is consumed by the request being
|
|
@@ -946,6 +967,7 @@ export class PushCoalescer {
|
|
|
946
967
|
state.batch = {
|
|
947
968
|
latest: s.batch.latest, notices: s.batch.notices, dropped: s.batch.dropped,
|
|
948
969
|
...(s.batch.rendering ? { noRender: true } : s.batch.firstView ? { firstView: true } : {}),
|
|
970
|
+
...(s.batch.allAmbient ? { allAmbient: true } : {}),
|
|
949
971
|
};
|
|
950
972
|
}
|
|
951
973
|
this.subjects.set(s.subject, state);
|
|
@@ -1038,8 +1060,8 @@ export class PushCoalescer {
|
|
|
1038
1060
|
// restore() reads only these. After a restart nothing of the subject
|
|
1039
1061
|
// is tracked as unread, a run included: its history counts as read.
|
|
1040
1062
|
...(s.occupant ? { occupant: { eventId: s.occupant.eventId, placement: s.occupant.placement } } : {}),
|
|
1041
|
-
...(s.batch ? { batch: { latest: s.batch.latest, notices: s.batch.notices, dropped: s.batch.dropped, ...(s.batch.noRender ? { rendering: true } : s.batch.firstView ? { firstView: true } : {}) } }
|
|
1042
|
-
: s.rendering ? { batch: { latest: s.rendering.batch.latest, notices: s.rendering.batch.notices, dropped: s.rendering.batch.dropped, rendering: true } }
|
|
1063
|
+
...(s.batch ? { batch: { latest: s.batch.latest, notices: s.batch.notices, dropped: s.batch.dropped, ...(s.batch.noRender ? { rendering: true } : s.batch.firstView ? { firstView: true } : {}), ...(s.batch.allAmbient ? { allAmbient: true } : {}) } }
|
|
1064
|
+
: s.rendering ? { batch: { latest: s.rendering.batch.latest, notices: s.rendering.batch.notices, dropped: s.rendering.batch.dropped, rendering: true, ...(s.rendering.batch.allAmbient ? { allAmbient: true } : {}) } }
|
|
1043
1065
|
: {}),
|
|
1044
1066
|
})),
|
|
1045
1067
|
};
|