archgraph-argo 0.20.6 → 0.20.7

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.
@@ -236,8 +236,9 @@ async function executeWpP2Retrieval({
236
236
  configuration: configurationEvidence.configuration,
237
237
  transport: composition.transport,
238
238
  });
239
- markPhase('retrieval:embed');
239
+ markPhase('retrieval:embed:start');
240
240
  const vector = await provider.embed(request.intent);
241
+ markPhase('retrieval:embed:done');
241
242
  requireQualifiedVector(vector);
242
243
  const purpose = request && typeof request.purpose === 'string' ? request.purpose : '';
243
244
  const strict = AUDIT_PURPOSES.has(purpose);
@@ -254,6 +255,7 @@ async function executeWpP2Retrieval({
254
255
  const pool = rerank ? Math.max(topK, rerankOptions.poolSize) : topK;
255
256
  const channelSeeds = [];
256
257
  for (const channel of CHANNELS) {
258
+ markPhase('retrieval:vector:' + channel.channel);
257
259
  const vectorSeeds = await exhaustChannel({
258
260
  channel,
259
261
  neo4jDriver: composition.neo4jDriver,
@@ -264,6 +266,7 @@ async function executeWpP2Retrieval({
264
266
  });
265
267
  let seeds = vectorSeeds;
266
268
  if (hybrid) {
269
+ markPhase('retrieval:lexical:' + channel.channel);
267
270
  const lexicalSeeds = await exhaustLexicalChannel({
268
271
  channel,
269
272
  neo4jDriver: composition.neo4jDriver,
@@ -276,7 +279,7 @@ async function executeWpP2Retrieval({
276
279
  channelSeeds.push({ channel, seeds });
277
280
  }
278
281
  if (rerank) {
279
- markPhase('retrieval:rerank');
282
+ markPhase('retrieval:rerank:start');
280
283
  // Rerank every channel CONCURRENTLY: the LLM calls dominate latency and are
281
284
  // independent, so parallelizing turns the cost from sum(channels) into
282
285
  // ~one call. fail-open: a null/empty order keeps the original ordering.
@@ -292,6 +295,7 @@ async function executeWpP2Retrieval({
292
295
  : seeds
293
296
  )));
294
297
  channelSeeds.forEach((entry, index) => { entry.seeds = rerankedSeeds[index]; });
298
+ markPhase('retrieval:rerank:done');
295
299
  }
296
300
  const seedsByType = {};
297
301
  for (const { channel, seeds } of channelSeeds) {
@@ -741,6 +745,7 @@ async function exhaustChannel({
741
745
  const effectiveMax = Number.isInteger(maxSeeds) && maxSeeds > 0 ? maxSeeds : Number.POSITIVE_INFINITY;
742
746
  let offset = 0;
743
747
  while (accepted.length < effectiveMax) {
748
+ markPhase('retrieval:vector-window:' + channel.channel);
744
749
  const parameters = Object.freeze({
745
750
  indexName: channel.indexName,
746
751
  channel: channel.channel,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "archgraph-argo",
3
- "version": "0.20.6",
3
+ "version": "0.20.7",
4
4
  "description": "Deploy the ArchGraph ARGO toolchain, skills, and rules (schema, scripts, argo-init skill, global rule) with one command.",
5
5
  "license": "MIT",
6
6
  "bin": {