@cat-factory/server 0.267.0 → 0.268.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.
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubMergeabilityProvider.js","sourceRoot":"","sources":["../../src/github/GitHubMergeabilityProvider.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAU7C;;;;;;;;GAQG;AACH,MAAM,OAAO,0BAA0B;IACR,IAAI;IAAjC,YAA6B,IAA4C;oBAA5C,IAAI;IAA2C,CAAC;IAE7E,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,OAAe;QACxD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QACvE,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;QAChC,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;QAClC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;QAE1C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QACzE,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;QACpC,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,CAAA;QAE/C,4FAA4F;QAC5F,wFAAwF;QACxF,MAAM,KAAK,GAAuB,MAAM,OAAO,CAAC,GAAG,CACjD,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAA6B,EAAE;YAC9C,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;YACtF,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,IAAI,EAAE,CAAA;YACnC,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAA;YAC5B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9C,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,SAAS;iBACnB,CAAA;YACH,CAAC;YACD,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,GAC1C,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,0BAA0B,CACrD,cAAc,EACd,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EACrB,MAAM,CACP,CAAA;YACH,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9C,OAAO;gBACP,OAAO,EAAE,oBAAoB,CAAC,SAAS,EAAE,cAAc,CAAC;aACzD,CAAA;QACH,CAAC,CAAC,CACH,CAAA;QACD,OAAO,EAAE,KAAK,EAAE,CAAA;IAClB,CAAC;CACF;AAED,yFAAyF;AACzF,MAAM,UAAU,oBAAoB,CAClC,SAAyB,EACzB,cAAsB;IAEtB,kEAAkE;IAClE,IAAI,cAAc,KAAK,OAAO;QAAE,OAAO,YAAY,CAAA;IACnD,mFAAmF;IACnF,IAAI,SAAS,KAAK,IAAI,IAAI,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,EAAE;QAAE,OAAO,SAAS,CAAA;IACjG,iFAAiF;IACjF,OAAO,WAAW,CAAA;AACpB,CAAC"}
1
+ {"version":3,"file":"GitHubMergeabilityProvider.js","sourceRoot":"","sources":["../../src/github/GitHubMergeabilityProvider.ts"],"names":[],"mappings":"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"}
@@ -28,9 +28,9 @@ export interface GitHubPrReportPublisherDependencies {
28
28
  */
29
29
  resolveRepoOrigin?: ResolveRepoOrigin;
30
30
  /**
31
- * Optional logger for the one best-effort path here: PEER target resolution, which is
32
- * swallowed so a broken peer linkage cannot cost the own-service report. Wire it, or that
33
- * swallow leaves no trace and the peers simply stop getting reports.
31
+ * Optional logger for the one best-effort path here: the multi-repo repo resolution, which is
32
+ * swallowed so a broken involved-service linkage cannot cost the own-service report. Wire it,
33
+ * or that swallow leaves no trace and the peers simply stop getting reports.
34
34
  */
35
35
  logger?: Logger;
36
36
  }
@@ -64,12 +64,23 @@ export declare class GitHubPrReportPublisher implements PrVerificationReportPubl
64
64
  *
65
65
  * ONE block read and ONE repo resolution for the whole set: the own-service target is
66
66
  * resolved first (it is needed regardless, and lets the multi-repo resolver skip re-walking
67
- * the block's ancestry), then a single `resolveRepoTargets` call covers every peer. Resolving
68
- * per recorded peer PR would be the N+1 this codebase bans.
67
+ * the block's ancestry), then a single `resolveRepoTargets` call covers every repo the run
68
+ * touched. Resolving per recorded peer PR would be the N+1 this codebase bans.
69
69
  */
70
70
  resolveTargets(workspaceId: string, blockId: string): Promise<PrReportTarget[]>;
71
71
  /**
72
- * The run's PEER pull requests, addressed through the multi-repo repo resolution.
72
+ * Every repo this run touched, indexed by `owner/name`: the primary plus one checkout per
73
+ * involved service frame, deduped by repo (a monorepo hosting several of them is ONE entry
74
+ * carrying all their frames). Undefined when there is nothing to resolve, or when the
75
+ * multi-repo resolver is not wired.
76
+ *
77
+ * Resolved even when the run opened no peer PR, because the co-located case has none to open:
78
+ * an involved service sharing the primary's monorepo rides the own-service pull request, and
79
+ * this is what tells the own target which frames those are.
80
+ */
81
+ private resolveCheckouts;
82
+ /**
83
+ * The run's PEER pull requests, addressed through the resolved checkout set.
73
84
  *
74
85
  * A recorded peer PR is only targetable when two things line up: it carries a `number` (the
75
86
  * unit the description write addresses, absent on a ref that was only ever a URL) and its
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubPrReportPublisher.d.ts","sourceRoot":"","sources":["../../src/github/GitHubPrReportPublisher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,YAAY,EACZ,MAAM,EACN,qBAAqB,EACrB,cAAc,EACd,6BAA6B,EAE9B,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAEV,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAIxE,MAAM,WAAW,mCAAmC;IAClD;;;;OAIG;IACH,YAAY,EAAE,YAAY,CAAA;IAC1B,4EAA4E;IAC5E,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,gEAAgE;IAChE,eAAe,EAAE,eAAe,CAAA;IAChC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAwBD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,uBAAwB,YAAW,6BAA6B;IAC/D,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,mCAAmC,EAAI;IAE1E;;;;;;;OAOG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAiCpF;IAED;;;;;;;;;;OAUG;YACW,WAAW;IAuCzB;;;;;;;;;OASG;IACH,OAAO,CAAC,QAAQ;IAiBV,OAAO,CACX,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,CAAC,CAehC;CACF"}
1
+ {"version":3,"file":"GitHubPrReportPublisher.d.ts","sourceRoot":"","sources":["../../src/github/GitHubPrReportPublisher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,YAAY,EACZ,MAAM,EACN,qBAAqB,EACrB,cAAc,EACd,6BAA6B,EAE9B,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAEV,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,KAAK,EAAgB,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAStF,MAAM,WAAW,mCAAmC;IAClD;;;;OAIG;IACH,YAAY,EAAE,YAAY,CAAA;IAC1B,4EAA4E;IAC5E,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,gEAAgE;IAChE,eAAe,EAAE,eAAe,CAAA;IAChC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAwBD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,uBAAwB,YAAW,6BAA6B;IAC/D,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,mCAAmC,EAAI;IAE1E;;;;;;;OAOG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CA+CpF;IAED;;;;;;;;;OASG;YACW,gBAAgB;IAsB9B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,WAAW;IAsBnB;;;;;;;;;OASG;IACH,OAAO,CAAC,QAAQ;IAiBV,OAAO,CACX,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,CAAC,CAehC;CACF"}
@@ -2,6 +2,10 @@ import { noopLogger, runBestEffort, spliceManagedSection } from '@cat-factory/ke
2
2
  import { allPullRequests } from '@cat-factory/contracts';
3
3
  import { githubRepoOrigin } from '../agents/containerAgentBody.js';
4
4
  import { splitRepo } from './repoFullName.js';
5
+ /** The `owner/name` key a recorded pull request's repo is matched on. */
6
+ function repoKey(repo) {
7
+ return `${repo.owner}/${repo.name}`;
8
+ }
5
9
  /**
6
10
  * The numeric connection handle the engine VCS client takes, recovered from a target's neutral
7
11
  * {@link VcsConnectionRef}.
@@ -50,8 +54,8 @@ export class GitHubPrReportPublisher {
50
54
  *
51
55
  * ONE block read and ONE repo resolution for the whole set: the own-service target is
52
56
  * resolved first (it is needed regardless, and lets the multi-repo resolver skip re-walking
53
- * the block's ancestry), then a single `resolveRepoTargets` call covers every peer. Resolving
54
- * per recorded peer PR would be the N+1 this codebase bans.
57
+ * the block's ancestry), then a single `resolveRepoTargets` call covers every repo the run
58
+ * touched. Resolving per recorded peer PR would be the N+1 this codebase bans.
55
59
  */
56
60
  async resolveTargets(workspaceId, blockId) {
57
61
  const block = await this.deps.blockRepository.get(workspaceId, blockId);
@@ -63,61 +67,86 @@ export class GitHubPrReportPublisher {
63
67
  const prs = allPullRequests(block);
64
68
  if (prs.length === 0)
65
69
  return [];
66
- const targets = [];
67
- // The own-service PR FIRST when it exists: the engine reads the peer reports' back-pointer
68
- // off the head of this list rather than re-resolving it. Matched on an ABSENT `repo` rather
69
- // than a falsy one, and only when the block records an own PR at all: a peer whose recorded
70
- // repo is the empty string is unaddressable, not the own-service one.
70
+ // The own-service PR is matched on an ABSENT `repo` rather than a falsy one, and only when
71
+ // the block records an own PR at all: a peer whose recorded repo is the empty string is
72
+ // unaddressable, not the own-service one.
71
73
  const own = block.pullRequest ? prs.find((pr) => pr.repo === undefined) : undefined;
74
+ const peers = prs.filter((pr) => pr.repo !== undefined);
72
75
  const ownRepo = own ? await this.deps.resolveRepoTarget(workspaceId, blockId) : null;
73
- if (own?.ref.number != null && ownRepo) {
74
- targets.push(this.describe(ownRepo, own.ref.number, { role: 'own', url: own.ref.url }));
75
- }
76
76
  // BEST-EFFORT, and deliberately so: the multi-repo resolver THROWS on a workspace with no
77
77
  // installation or an involved frame that lost its repo linkage, and letting that propagate
78
- // would mean one broken peer linkage costs the OWN-SERVICE report too the one a reviewer is
78
+ // would mean one broken linkage costs the OWN-SERVICE report too, the one a reviewer is
79
79
  // most likely reading. The same "a failure on one target does not cost the others" rule the
80
80
  // engine applies when publishing, applied one step earlier where the targets are found.
81
- const peers = await runBestEffort(this.deps.logger ?? noopLogger, 'pr-report peer target resolution', () => this.peerTargets(workspaceId, blockId, block, prs, ownRepo), { workspaceId, blockId });
82
- targets.push(...(peers ?? []));
81
+ const checkouts = await runBestEffort(this.deps.logger ?? noopLogger, 'pr-report repo resolution', () => this.resolveCheckouts(workspaceId, blockId, block, peers, ownRepo), { workspaceId, blockId });
82
+ const targets = [];
83
+ // The own-service PR FIRST when it exists: the engine reads the peer reports' back-pointer
84
+ // off the head of this list rather than re-resolving it.
85
+ if (own?.ref.number != null && ownRepo) {
86
+ targets.push(this.describe(ownRepo, own.ref.number, {
87
+ role: 'own',
88
+ // The involved frames co-located in the PRIMARY repo. They have no peer checkout and
89
+ // no PR of their own: their changes ride this one, so this report is the only place
90
+ // they are reported at all, and naming only the peers left a co-located service
91
+ // looking like one the run opened no pull request for.
92
+ frameIds: checkouts?.get(repoKey(ownRepo))?.involved.map((i) => i.frameId),
93
+ url: own.ref.url,
94
+ }));
95
+ }
96
+ targets.push(...(checkouts ? this.peerTargets(peers, checkouts) : []));
83
97
  return targets;
84
98
  }
85
99
  /**
86
- * The run's PEER pull requests, addressed through the multi-repo repo resolution.
100
+ * Every repo this run touched, indexed by `owner/name`: the primary plus one checkout per
101
+ * involved service frame, deduped by repo (a monorepo hosting several of them is ONE entry
102
+ * carrying all their frames). Undefined when there is nothing to resolve, or when the
103
+ * multi-repo resolver is not wired.
87
104
  *
88
- * A recorded peer PR is only targetable when two things line up: it carries a `number` (the
89
- * unit the description write addresses, absent on a ref that was only ever a URL) and its
90
- * repo is in the resolved checkout set (which is what supplies the connection to write
91
- * through, and is the platform's own answer about which repos this run touched). A peer that
92
- * satisfies neither is skipped rather than guessed at — the repo name on a recorded peer PR
93
- * is harness-reported, and writing a report onto a pull request we cannot confirm the identity
94
- * of is the one failure mode worse than not writing it.
105
+ * Resolved even when the run opened no peer PR, because the co-located case has none to open:
106
+ * an involved service sharing the primary's monorepo rides the own-service pull request, and
107
+ * this is what tells the own target which frames those are.
95
108
  */
96
- async peerTargets(workspaceId, blockId, block, prs, ownRepo) {
97
- // Every entry that names a repo: the complement of the own-service one above.
98
- const peers = prs.filter((pr) => pr.repo !== undefined);
109
+ async resolveCheckouts(workspaceId, blockId, block, peers, ownRepo) {
99
110
  const resolveAll = this.deps.resolveRepoTargets;
100
- if (!peers.length || !resolveAll)
101
- return [];
111
+ if (!resolveAll)
112
+ return undefined;
102
113
  // The frames to resolve: the task's declared involved services, plus any frame a recorded
103
114
  // peer PR attributes itself to. The union rather than either alone, because the declared
104
115
  // list is what the run fanned out over while the recorded PRs are what it actually opened,
105
116
  // and a peer whose frame left the task's involved list still has an open PR owed a report.
106
117
  const frameIds = [
107
- ...new Set([
108
- ...(block.involvedServiceIds ?? []),
109
- ...peers.map((p) => p.frameId).filter((id) => !!id),
110
- ]),
118
+ ...new Set([...(block.involvedServiceIds ?? []), ...peers.flatMap((p) => p.frameIds ?? [])]),
111
119
  ];
120
+ if (frameIds.length === 0)
121
+ return undefined;
112
122
  const resolved = await resolveAll(workspaceId, blockId, frameIds, ownRepo ?? undefined);
113
- const byRepo = new Map(resolved.checkouts.map((c) => [`${c.target.owner}/${c.target.name}`, c.target]));
123
+ return new Map(resolved.checkouts.map((c) => [repoKey(c.target), c]));
124
+ }
125
+ /**
126
+ * The run's PEER pull requests, addressed through the resolved checkout set.
127
+ *
128
+ * A recorded peer PR is only targetable when two things line up: it carries a `number` (the
129
+ * unit the description write addresses, absent on a ref that was only ever a URL) and its
130
+ * repo is in the resolved checkout set (which is what supplies the connection to write
131
+ * through, and is the platform's own answer about which repos this run touched). A peer that
132
+ * satisfies neither is skipped rather than guessed at — the repo name on a recorded peer PR
133
+ * is harness-reported, and writing a report onto a pull request we cannot confirm the identity
134
+ * of is the one failure mode worse than not writing it.
135
+ */
136
+ peerTargets(peers, checkouts) {
114
137
  const out = [];
115
138
  for (const peer of peers) {
116
139
  const number = peer.ref.number;
117
- const repo = peer.repo ? byRepo.get(peer.repo) : undefined;
118
- if (number == null || !repo)
140
+ const checkout = peer.repo ? checkouts.get(peer.repo) : undefined;
141
+ if (number == null || !checkout)
119
142
  continue;
120
- out.push(this.describe(repo, number, { role: 'peer', frameId: peer.frameId, url: peer.ref.url }));
143
+ out.push(this.describe(checkout.target, number, {
144
+ role: 'peer',
145
+ // The recorded attribution when the run stated one, else the frames this checkout
146
+ // hosts: the same derivation the dispatch made, off a resolution already paid for.
147
+ frameIds: peer.frameIds?.length ? peer.frameIds : checkout.involved.map((i) => i.frameId),
148
+ url: peer.ref.url,
149
+ }));
121
150
  }
122
151
  return out;
123
152
  }
@@ -135,11 +164,11 @@ export class GitHubPrReportPublisher {
135
164
  const origin = (this.deps.resolveRepoOrigin ?? githubRepoOrigin)(repo);
136
165
  return {
137
166
  prNumber,
138
- repo: `${repo.owner}/${repo.name}`,
167
+ repo: repoKey(repo),
139
168
  provider: origin.provider,
140
169
  connection: { provider: origin.provider, connectionId: String(repo.installationId) },
141
170
  role: scope.role,
142
- frameId: scope.frameId ?? null,
171
+ ...(scope.frameIds?.length ? { frameIds: scope.frameIds } : {}),
143
172
  url: scope.url ?? null,
144
173
  };
145
174
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubPrReportPublisher.js","sourceRoot":"","sources":["../../src/github/GitHubPrReportPublisher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GitHubPrReportPublisher.js","sourceRoot":"","sources":["../../src/github/GitHubPrReportPublisher.ts"],"names":[],"mappings":"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"}
@@ -14,5 +14,21 @@ export declare function workersAiOutputCeiling(args: {
14
14
  contextWindow: number | undefined;
15
15
  inputChars: number;
16
16
  }): number;
17
+ /**
18
+ * How much text this request is actually SENDING: the messages plus the tool definitions, which is
19
+ * what {@link workersAiOutputCeiling} reserves window room for.
20
+ *
21
+ * Measured off the payload being forwarded, never off the redacted copy the telemetry records.
22
+ * Those two used to be one string, which quietly made a RECORDING decision into a correctness one:
23
+ * an OpenAI-shape multimodal turn carries its picture inline as a `data:` URL, describing it
24
+ * instead of copying it shrinks the measurement by the whole size of the picture, and the cap then
25
+ * under-reserves input room by exactly that much. Under-reserving is the one direction this
26
+ * estimate must never err in: over-reserving trims output a little, while under-reserving invites
27
+ * the context overflow the reservation exists to prevent.
28
+ *
29
+ * Exported for the regression test, which is the only way to pin the coupling: both halves are
30
+ * plausible-looking strings, so nothing else distinguishes them.
31
+ */
32
+ export declare function forwardedInputChars(payload: Record<string, unknown>): number;
17
33
  export declare function llmProxyController(): Hono<AppEnv>;
18
34
  //# sourceMappingURL=LlmProxyController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LlmProxyController.d.ts","sourceRoot":"","sources":["../../../src/modules/llmProxy/LlmProxyController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,IAAI,EAAE,MAAM,MAAM,CAAA;AAoBzC,OAAO,KAAK,EAAE,MAAM,EAAmB,MAAM,mBAAmB,CAAA;AAoDhE;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,UAAU,EAAE,MAAM,CAAA;CACnB,GAAG,MAAM,CAQT;AAgxBD,wBAAgB,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,CAcjD"}
1
+ {"version":3,"file":"LlmProxyController.d.ts","sourceRoot":"","sources":["../../../src/modules/llmProxy/LlmProxyController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,IAAI,EAAE,MAAM,MAAM,CAAA;AAoBzC,OAAO,KAAK,EAAE,MAAM,EAAmB,MAAM,mBAAmB,CAAA;AAoDhE;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,UAAU,EAAE,MAAM,CAAA;CACnB,GAAG,MAAM,CAQT;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAI5E;AAkxBD,wBAAgB,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,CAcjD"}
@@ -65,6 +65,26 @@ export function workersAiOutputCeiling(args) {
65
65
  }
66
66
  return ceiling;
67
67
  }
68
+ /**
69
+ * How much text this request is actually SENDING: the messages plus the tool definitions, which is
70
+ * what {@link workersAiOutputCeiling} reserves window room for.
71
+ *
72
+ * Measured off the payload being forwarded, never off the redacted copy the telemetry records.
73
+ * Those two used to be one string, which quietly made a RECORDING decision into a correctness one:
74
+ * an OpenAI-shape multimodal turn carries its picture inline as a `data:` URL, describing it
75
+ * instead of copying it shrinks the measurement by the whole size of the picture, and the cap then
76
+ * under-reserves input room by exactly that much. Under-reserving is the one direction this
77
+ * estimate must never err in: over-reserving trims output a little, while under-reserving invites
78
+ * the context overflow the reservation exists to prevent.
79
+ *
80
+ * Exported for the regression test, which is the only way to pin the coupling: both halves are
81
+ * plausible-looking strings, so nothing else distinguishes them.
82
+ */
83
+ export function forwardedInputChars(payload) {
84
+ const messagesText = Array.isArray(payload.messages) ? JSON.stringify(payload.messages) : '';
85
+ const toolsText = Array.isArray(payload.tools) ? JSON.stringify(payload.tools) : '';
86
+ return messagesText.length + toolsText.length;
87
+ }
68
88
  /** Pull the bearer token from the Authorization header. */
69
89
  function bearer(header) {
70
90
  if (!header)
@@ -81,15 +101,15 @@ function bearer(header) {
81
101
  * to their large ceilings gracefully). Other providers keep Pi's value to respect their stricter
82
102
  * upstream output caps.
83
103
  */
84
- function applyWorkersAiCeiling(session, payload, promptText, current) {
104
+ function applyWorkersAiCeiling(session, payload, current) {
85
105
  if (session.provider !== 'workers-ai')
86
106
  return current;
87
107
  const asked = typeof payload.max_tokens === 'number' ? payload.max_tokens : 0;
88
- const toolsText = Array.isArray(payload.tools) ? JSON.stringify(payload.tools) : '';
89
108
  const floored = workersAiOutputCeiling({
90
109
  asked,
91
110
  contextWindow: contextWindowFor({ provider: session.provider, model: session.model }),
92
- inputChars: promptText.length + toolsText.length,
111
+ // Measured past the provider check, so no other provider pays for the serialization.
112
+ inputChars: forwardedInputChars(payload),
93
113
  });
94
114
  payload.max_tokens = floored;
95
115
  // Record the ceiling we actually applied, not the (often absent) asked value.
@@ -564,9 +584,12 @@ async function handleChatCompletion(c) {
564
584
  // (e.g. the Workers AI floor), so the recorded metric reflects what actually
565
585
  // applied, not just what the client asked for.
566
586
  let requestMaxTokens = typeof payload.max_tokens === 'number' ? payload.max_tokens : null;
567
- // Serialised with any image payload described rather than included: an OpenAI-shape multimodal
568
- // turn carries the picture inline as a `data:` URL, and recording it verbatim would put a
569
- // base64 copy of every attached image into the telemetry store on every turn that carried one.
587
+ // What gets RECORDED, and nothing else: serialised with any image payload described rather than
588
+ // included, because an OpenAI-shape multimodal turn carries the picture inline as a `data:` URL
589
+ // and recording it verbatim would put a base64 copy of every attached image into the telemetry
590
+ // store on every turn that carried one. Nothing may size the REQUEST off this string
591
+ // (`applyWorkersAiCeiling` measures the forwarded payload itself): a shrunken record must not
592
+ // become a shrunken measurement.
570
593
  const promptText = JSON.stringify(redactImagePayloads(payload.messages ?? []));
571
594
  // Correlate every proxied call with its run so a bootstrap/execution can be
572
595
  // traced end to end. We log the tool count explicitly: an agent (Pi) that gets
@@ -624,7 +647,7 @@ async function handleChatCompletion(c) {
624
647
  }
625
648
  // Give container agents generous output room for in-process Workers AI models (a no-op
626
649
  // for other providers); records the ceiling actually applied so the metric is accurate.
627
- requestMaxTokens = applyWorkersAiCeiling(session, payload, promptText, requestMaxTokens);
650
+ requestMaxTokens = applyWorkersAiCeiling(session, payload, requestMaxTokens);
628
651
  // The pooled API key leased for this call (non-binding providers), so usage can be
629
652
  // folded back into its rolling-window rotation counters when the call completes.
630
653
  let leasedApiKeyId = null;
@@ -1 +1 @@
1
- {"version":3,"file":"LlmProxyController.js","sourceRoot":"","sources":["../../../src/modules/llmProxy/LlmProxyController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmProxyController.js","sourceRoot":"","sources":["../../../src/modules/llmProxy/LlmProxyController.ts"],"names":[],"mappings":"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"}