@cat-factory/server 0.315.2 → 0.317.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.
Files changed (40) hide show
  1. package/dist/agents/ContainerAgentExecutor.d.ts +24 -20
  2. package/dist/agents/ContainerAgentExecutor.d.ts.map +1 -1
  3. package/dist/agents/ContainerAgentExecutor.js +61 -113
  4. package/dist/agents/ContainerAgentExecutor.js.map +1 -1
  5. package/dist/agents/ContainerEnvironmentProbeAgent.d.ts +163 -0
  6. package/dist/agents/ContainerEnvironmentProbeAgent.d.ts.map +1 -0
  7. package/dist/agents/ContainerEnvironmentProbeAgent.js +414 -0
  8. package/dist/agents/ContainerEnvironmentProbeAgent.js.map +1 -0
  9. package/dist/agents/ModelRouter.d.ts +40 -4
  10. package/dist/agents/ModelRouter.d.ts.map +1 -1
  11. package/dist/agents/ModelRouter.js +1 -1
  12. package/dist/agents/ModelRouter.js.map +1 -1
  13. package/dist/agents/containerJobAccounting.d.ts +10 -3
  14. package/dist/agents/containerJobAccounting.d.ts.map +1 -1
  15. package/dist/agents/containerJobAccounting.js +11 -4
  16. package/dist/agents/containerJobAccounting.js.map +1 -1
  17. package/dist/agents/containerJobAuth.d.ts +146 -0
  18. package/dist/agents/containerJobAuth.d.ts.map +1 -0
  19. package/dist/agents/containerJobAuth.js +171 -0
  20. package/dist/agents/containerJobAuth.js.map +1 -0
  21. package/dist/agents/dispatchPromptContext.d.ts +30 -0
  22. package/dist/agents/dispatchPromptContext.d.ts.map +1 -0
  23. package/dist/agents/dispatchPromptContext.js +23 -0
  24. package/dist/agents/dispatchPromptContext.js.map +1 -0
  25. package/dist/agents/singleKindModel.d.ts +46 -0
  26. package/dist/agents/singleKindModel.d.ts.map +1 -0
  27. package/dist/agents/singleKindModel.js +59 -0
  28. package/dist/agents/singleKindModel.js.map +1 -0
  29. package/dist/agents/testCredentials.d.ts +25 -0
  30. package/dist/agents/testCredentials.d.ts.map +1 -0
  31. package/dist/agents/testCredentials.js +23 -0
  32. package/dist/agents/testCredentials.js.map +1 -0
  33. package/dist/index.d.ts +4 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +6 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/modules/environments/EnvironmentController.d.ts.map +1 -1
  38. package/dist/modules/environments/EnvironmentController.js +46 -1
  39. package/dist/modules/environments/EnvironmentController.js.map +1 -1
  40. package/package.json +7 -7
@@ -1,5 +1,6 @@
1
1
  import { type AgentContextRecorder, type AgentJobHandle, type AgentJobUpdate, type AgentRunContext, type AgentRunResult, type AsyncAgentExecutor, type HarnessKind, type LlmTraceSink, type Logger, type ModelFlavor, type ModelRef, type McpOAuthTokenSource, type OperationalMetrics, type RunReclaimTarget, type StoreAgentContextGate, type SubscriptionQuotaTarget, type SubscriptionVendor, type TestSecretEntry, type ToolSecretResolver, type WebSearchAvailability } from '@cat-factory/kernel';
2
2
  import { type AgentKindRegistry, type AgentRouting } from '@cat-factory/agents';
3
+ import { type LeasePersonalSubscriptionToken, type LeaseSubscriptionToken } from './containerJobAuth.js';
3
4
  import { type RecordToolCalls } from './toolTrajectory.js';
4
5
  import { type HarnessCallsRecordInput } from '@cat-factory/orchestration';
5
6
  import type { ContainerSessionService } from '../containers/ContainerSessionService.js';
@@ -9,23 +10,6 @@ export type { ResolveRunnerTransport };
9
10
  import type { EnsureWorkBranch, JobPackageRegistrySpec, MintInstallationToken, ResolveRepoOrigin, ResolveRepoTarget } from './repoTargeting.js';
10
11
  export type { EnsureWorkBranch, JobPackageRegistrySpec, MintInstallationToken, RepoOrigin, RepoTarget, ResolveRepoOrigin, ResolveRepoTarget, } from './repoTargeting.js';
11
12
  export { jobTokenRepoIds } from './repoTargeting.js';
12
- /** A subscription token leased from the workspace's pool for a vendor. */
13
- interface LeasedSubscriptionToken {
14
- tokenId: string;
15
- secret: string;
16
- }
17
- /** Lease the least-loaded subscription token for a vendor, or throw if none. */
18
- type LeaseSubscriptionToken = (workspaceId: string, vendor: SubscriptionVendor) => Promise<LeasedSubscriptionToken>;
19
- /**
20
- * Lease the run-initiator's OWN activated personal credential for an individual-usage
21
- * vendor (Claude). Scoped to the run + user (not pooled); throws a
22
- * `CredentialRequiredError` when the run has no live activation (the user must re-enter
23
- * their password). Returns just the raw secret — no token id, since there is no pool
24
- * rotation/usage to attribute for a single-user credential.
25
- */
26
- type LeasePersonalSubscriptionToken = (executionId: string, userId: string, vendor: SubscriptionVendor) => Promise<{
27
- secret: string;
28
- }>;
29
13
  /** Fold a finished subscription job's usage into the leased token + telemetry. */
30
14
  type RecordSubscriptionUsage = (workspaceId: string, tokenId: string, usage: {
31
15
  inputTokens: number;
@@ -263,8 +247,15 @@ export declare class ContainerAgentExecutor implements AsyncAgentExecutor {
263
247
  private readonly accounting;
264
248
  /** Resolves which model + subscription path a step runs on (routing policy). */
265
249
  private readonly modelRouter;
250
+ /**
251
+ * Resolves the per-job auth channel (proxy session token / leased subscription credential /
252
+ * ambient CLI). Shared with the single-job dispatchers, so no flow can know only half of it.
253
+ */
254
+ private readonly jobAuth;
266
255
  /** The app-owned agent-kind registry the job-body builders read (custom-kind prompts/tuning). */
267
256
  private readonly agentKindRegistry;
257
+ /** Normalised once, so the best-effort degradations below stay unit-testable. */
258
+ private readonly log;
268
259
  constructor(deps: ContainerAgentExecutorDependencies);
269
260
  /** Repo-operating steps always run as polled async jobs (the coding can be long). */
270
261
  runsAsync(_context: AgentRunContext): boolean;
@@ -330,6 +321,18 @@ export declare class ContainerAgentExecutor implements AsyncAgentExecutor {
330
321
  private resolveWorkBranchReady;
331
322
  /** Resolve tokens/prompts/target and assemble the harness job body for `context`. */
332
323
  private buildJobBody;
324
+ /**
325
+ * The frame's sensitive test credentials, for the kinds that are handed them: one read, two
326
+ * projections (the values the container carries, the state the prompt states).
327
+ *
328
+ * The SAME resolution the environment dry run uses, which is what makes a dry run's verdict
329
+ * about authenticating here predict this step's. Best-effort inside, so a sealed store that will
330
+ * not open costs the credentials and not the step; resolved unguarded in the dispatch wave, a
331
+ * read failure took the whole step down with an error naming nothing an operator could act on.
332
+ *
333
+ * `undefined` for every other kind, which is what keeps their prompts byte-identical.
334
+ */
335
+ private resolveTestCredentialsFor;
333
336
  /**
334
337
  * The two SECRET env channels a dispatch carries, resolved together because they are one
335
338
  * concern: `{ key, value }` pairs the harness turns into environment variables of this one
@@ -346,9 +349,10 @@ export declare class ContainerAgentExecutor implements AsyncAgentExecutor {
346
349
  */
347
350
  private resolveJobSecretEnv;
348
351
  /**
349
- * Resolve the per-job auth the harness carries: the proxy session token for Pi, or a
350
- * leased subscription token for Claude Code / Codex. Spread into every job body
351
- * (`common`) so the per-kind bodies can't drift on which auth they forward.
352
+ * Resolve the per-job auth the harness carries, through the SHARED resolver: the proxy session
353
+ * token for Pi, or a leased subscription token for Claude Code / Codex. Spread into every job
354
+ * body (`common`) so the per-kind bodies can't drift on which auth they forward, and shared
355
+ * with the single-job dispatchers so no flow serves only the Pi branch.
352
356
  */
353
357
  private resolveAuth;
354
358
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ContainerAgentExecutor.d.ts","sourceRoot":"","sources":["../../src/agents/ContainerAgentExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContainerAgentExecutor.d.ts","sourceRoot":"","sources":["../../src/agents/ContainerAgentExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,16 @@
1
1
  import {} from '@cat-factory/kernel';
2
- import { ConflictError, CredentialRequiredError, VCS_DOC_URLS, SUBSCRIPTION_VENDORS, isIndividualVendor, } from '@cat-factory/kernel';
2
+ import { ConflictError, VCS_DOC_URLS, noopLogger } from '@cat-factory/kernel';
3
3
  import { resolveAprioriWorkingBranch } from '@cat-factory/contracts';
4
4
  import { agentTuningFor, withComplexityAllowance, defaultAgentKindRegistry, isReadOnlyAgentKind, webResearchGuidanceFor, } from '@cat-factory/agents';
5
5
  import { ModelRouter } from './ModelRouter.js';
6
+ import { ContainerJobAuthResolver, } from './containerJobAuth.js';
6
7
  import { buildDispatchContextFiles, renderSkillsForHarness } from './contextFiles.js';
7
8
  import { dispatchToolServerDeps, resolveDispatchToolServers, stepToolServerRecord, } from './toolServers.js';
8
9
  import { resolveCapabilitySecrets } from './capabilitySecrets.js';
9
10
  import { buildDoneUpdate, buildFailureMeta, buildRunningUpdate, settledRunResult, } from './containerAgentResult.js';
10
11
  import { buildKindBody } from './jobBody.js';
12
+ import { resolveTestCredentials } from './testCredentials.js';
13
+ import { buildDispatchPromptContext } from './dispatchPromptContext.js';
11
14
  import { buildDispatchOptions } from './dispatchOptions.js';
12
15
  import { containerJobLog, settleFailureFields } from './containerAgentLogging.js';
13
16
  import { acceptContainerJob } from './containerAgentDispatch.js';
@@ -48,8 +51,15 @@ export class ContainerAgentExecutor {
48
51
  accounting;
49
52
  /** Resolves which model + subscription path a step runs on (routing policy). */
50
53
  modelRouter;
54
+ /**
55
+ * Resolves the per-job auth channel (proxy session token / leased subscription credential /
56
+ * ambient CLI). Shared with the single-job dispatchers, so no flow can know only half of it.
57
+ */
58
+ jobAuth;
51
59
  /** The app-owned agent-kind registry the job-body builders read (custom-kind prompts/tuning). */
52
60
  agentKindRegistry;
61
+ /** Normalised once, so the best-effort degradations below stay unit-testable. */
62
+ log;
53
63
  constructor(deps) {
54
64
  this.deps = deps;
55
65
  this.jobs = new RunnerJobClient(deps.resolveTransport);
@@ -62,6 +72,8 @@ export class ContainerAgentExecutor {
62
72
  hasSubscriptionToken: deps.hasSubscriptionToken,
63
73
  hasPersonalSubscription: deps.hasPersonalSubscription,
64
74
  });
75
+ this.jobAuth = new ContainerJobAuthResolver(deps);
76
+ this.log = deps.logger ?? noopLogger;
65
77
  }
66
78
  /** Repo-operating steps always run as polled async jobs (the coding can be long). */
67
79
  runsAsync(_context) {
@@ -75,7 +87,7 @@ export class ContainerAgentExecutor {
75
87
  */
76
88
  async startJob(context) {
77
89
  const { workspaceId, executionId } = this.requireIds(context);
78
- const { body, model, provider, kind, subscriptionTokenId, search, repoSummary, toolServers } = await this.buildJobBody(context);
90
+ const { body, model, provider, kind, subscriptionTokenId, subscriptionVendor, search, repoSummary, toolServers, } = await this.buildJobBody(context);
79
91
  // The job's id is per-STEP (run id + agent kind), so sibling steps that share this
80
92
  // run's container never collide in the harness's per-kind job registries; the run
81
93
  // itself is addressed by the execution id, so its container is reclaimed as a unit.
@@ -117,6 +129,7 @@ export class ContainerAgentExecutor {
117
129
  provider,
118
130
  workspaceId,
119
131
  agentKind: context.agentKind,
132
+ ...(subscriptionVendor ? { subscriptionVendor } : {}),
120
133
  search,
121
134
  repo: repoSummary,
122
135
  // The run's own record of what the agent could call. Unconditional on purpose: see
@@ -331,7 +344,7 @@ export class ContainerAgentExecutor {
331
344
  // `auth` (the proxy session token for Pi, or a leased subscription token for Claude Code /
332
345
  // Codex) is spread into every job body so the per-kind bodies can't drift on which auth
333
346
  // they forward.
334
- const [workBranchReady, aux, authResult, packageRegistries, resolvedTestSecrets, search] = await Promise.all([
347
+ const [workBranchReady, aux, authResult, packageRegistries, testCredentials, search] = await Promise.all([
335
348
  this.resolveWorkBranchReady(repo, workBranch, aprioriWork, context),
336
349
  // The auxiliary checkouts + their prompt sections: the multi-repo fan-out (coder /
337
350
  // ci-fixer), the conflict-resolver's peer targeting, the merger's combined-diff siblings,
@@ -350,10 +363,7 @@ export class ContainerAgentExecutor {
350
363
  this.deps.resolvePackageRegistries
351
364
  ? this.deps.resolvePackageRegistries(workspaceId)
352
365
  : Promise.resolve([]),
353
- // Sensitive test credentials for the tester kinds ONLY (mapped to env pairs below).
354
- isTesterKind(context.agentKind) && this.deps.resolveTestSecrets
355
- ? this.deps.resolveTestSecrets(workspaceId, blockId)
356
- : Promise.resolve([]),
366
+ this.resolveTestCredentialsFor(context.agentKind, workspaceId, blockId),
357
367
  // The proxy-backed web-tools switch: web_search is offered only when the run's account
358
368
  // has a usable upstream, so the agent is never handed a tool that always fails.
359
369
  this.deps.resolveWebSearchAvailability
@@ -401,7 +411,7 @@ export class ContainerAgentExecutor {
401
411
  const { testSecretEnv, capabilitySecrets } = await this.resolveJobSecretEnv(context, {
402
412
  workspaceId,
403
413
  blockId,
404
- resolvedTestSecrets,
414
+ resolvedTestSecrets: testCredentials?.env ?? [],
405
415
  });
406
416
  // Per-kind execution tuning (loosen-only progress-guard knobs) the harness applies
407
417
  // over its env/built-in defaults, so a kind whose normal pattern differs (e.g. a
@@ -435,17 +445,15 @@ export class ContainerAgentExecutor {
435
445
  // one of them was materialised, because `buildContextFiles` refuses a corpus that would not fit
436
446
  // rather than writing a prefix of it — so the index can never name a `.cat-context/` file the
437
447
  // agent won't find on disk.
438
- // Folds in the tool servers resolved above: they are a DISPATCH-level fact (the harness
439
- // decides what MCP is possible), so the engine cannot put them on the context but the prompt
440
- // and the agent-context snapshot must both see exactly what was wired.
441
- const promptContext = {
442
- ...context,
443
- ...(tools.toolServers.length ? { toolServers: tools.toolServers } : {}),
444
- ...(tools.unavailableToolServers.length
445
- ? { unavailableToolServers: tools.unavailableToolServers }
446
- : {}),
447
- ...(designImageDelivery ? { designImageDelivery } : {}),
448
- };
448
+ // The dispatch-resolved facts layered over the engine's context: what MCP the harness could
449
+ // be given, whether the design pictures were attached, and the credential state of the read
450
+ // that produced the values this job carries. See the collaborator for why each is a DISPATCH
451
+ // fact rather than something the engine could have put on the context.
452
+ const promptContext = buildDispatchPromptContext(context, {
453
+ tools,
454
+ designImageDelivery,
455
+ testCredentials,
456
+ });
449
457
  // The proxy-backed web-tools nudge + switch, shared by the kinds that allow web access
450
458
  // (coder/mocker/ci-fixer/fixer/tester/read-only). `search` was resolved in the wave above;
451
459
  // the per-kind hint (coder/mocker/analysis/… and any custom container kind) is applied here.
@@ -478,6 +486,9 @@ export class ContainerAgentExecutor {
478
486
  }, this.agentKindRegistry);
479
487
  return {
480
488
  subscriptionTokenId,
489
+ // The VENDOR, beside the provider: the two differ for four of the five, and it is the vendor
490
+ // a quota cycle is keyed on (see `recordQuotaUsageOnce`).
491
+ subscriptionVendor,
481
492
  body,
482
493
  model: `${ref.provider}:${ref.model}`,
483
494
  provider: ref.provider,
@@ -492,6 +503,27 @@ export class ContainerAgentExecutor {
492
503
  toolServers: tools,
493
504
  };
494
505
  }
506
+ /**
507
+ * The frame's sensitive test credentials, for the kinds that are handed them: one read, two
508
+ * projections (the values the container carries, the state the prompt states).
509
+ *
510
+ * The SAME resolution the environment dry run uses, which is what makes a dry run's verdict
511
+ * about authenticating here predict this step's. Best-effort inside, so a sealed store that will
512
+ * not open costs the credentials and not the step; resolved unguarded in the dispatch wave, a
513
+ * read failure took the whole step down with an error naming nothing an operator could act on.
514
+ *
515
+ * `undefined` for every other kind, which is what keeps their prompts byte-identical.
516
+ */
517
+ resolveTestCredentialsFor(agentKind, workspaceId, blockId) {
518
+ if (!isTesterKind(agentKind))
519
+ return Promise.resolve(undefined);
520
+ return resolveTestCredentials({
521
+ ...(this.deps.resolveTestSecrets ? { resolve: this.deps.resolveTestSecrets } : {}),
522
+ workspaceId,
523
+ blockId,
524
+ logger: this.log,
525
+ });
526
+ }
495
527
  /**
496
528
  * The two SECRET env channels a dispatch carries, resolved together because they are one
497
529
  * concern: `{ key, value }` pairs the harness turns into environment variables of this one
@@ -520,101 +552,17 @@ export class ContainerAgentExecutor {
520
552
  };
521
553
  }
522
554
  /**
523
- * Resolve the per-job auth the harness carries: the proxy session token for Pi, or a
524
- * leased subscription token for Claude Code / Codex. Spread into every job body
525
- * (`common`) so the per-kind bodies can't drift on which auth they forward.
555
+ * Resolve the per-job auth the harness carries, through the SHARED resolver: the proxy session
556
+ * token for Pi, or a leased subscription token for Claude Code / Codex. Spread into every job
557
+ * body (`common`) so the per-kind bodies can't drift on which auth they forward, and shared
558
+ * with the single-job dispatchers so no flow serves only the Pi branch.
526
559
  */
527
- async resolveAuth(context, args) {
528
- const { harness, ref, subscriptionVendor, workspaceId, executionId } = args;
529
- if (harness === 'pi') {
530
- const accountId = this.deps.resolveAccountId
531
- ? await this.deps.resolveAccountId(workspaceId)
532
- : undefined;
533
- const sessionToken = await this.deps.sessionService.mint({
534
- workspaceId,
535
- accountId: accountId ?? undefined,
536
- userId: context.initiatedByUserId,
537
- executionId,
538
- agentKind: context.agentKind,
539
- provider: ref.provider,
540
- model: ref.model,
541
- });
542
- // `proxyPhasePath` states what THIS backend serves: the phase-tagged completions route
543
- // the harness tags Pi's base URL with, so each call is attributed to the run phase that
544
- // spent it (`docs/initiatives/token-burn-instrumentation.md`). Unconditional — the route
545
- // is part of `llmProxyController`, so any backend running this code has it. It is the
546
- // harness that may be older or newer, and telling it what we serve is what keeps an
547
- // image pinned by a runner pool (or `LOCAL_HARNESS_IMAGE`) from posting every model call
548
- // to a 404. Same shape as `webSearch` below: the backend declares, the harness points.
549
- return {
550
- auth: {
551
- harness,
552
- proxyBaseUrl: this.deps.proxyBaseUrl,
553
- proxyPhasePath: true,
554
- sessionToken,
555
- },
556
- };
557
- }
558
- // Native local execution: the harness runs the developer's own CLI with its ambient
559
- // login, so we lease NOTHING and gate NOTHING — just flag ambient auth for the harness.
560
- // Passed the vendor so it can refuse a non-native vendor reusing the `claude-code`
561
- // harness (GLM/Kimi/DeepSeek), whose subscriptionBaseUrl ambient auth would drop.
562
- if (this.deps.nativeAmbientAuth?.(harness, subscriptionVendor)) {
563
- return { auth: { harness, ambientAuth: true } };
564
- }
565
- if (!subscriptionVendor) {
566
- throw new Error(`The ${harness} harness is not configured on this deployment; connect a ` +
567
- `subscription token or pick a different model.`);
568
- }
569
- // Individual-usage vendors (Claude) are NOT pooled: lease the run-initiator's OWN
570
- // activated personal credential. Pooled vendors (GLM/Kimi/DeepSeek/Codex) lease
571
- // from the workspace pool. Either path hands the RAW credential to the resolved
572
- // runner transport (see the trust note below).
573
- let secret;
574
- let subscriptionTokenId;
575
- if (isIndividualVendor(subscriptionVendor)) {
576
- if (!this.deps.leasePersonalSubscriptionToken) {
577
- throw new Error(`Personal ${subscriptionVendor} subscriptions are not configured on this ` +
578
- `deployment (no ENCRYPTION_KEY); pick a different model.`);
579
- }
580
- if (!context.initiatedByUserId) {
581
- // No identified initiator (auth-disabled/local dev): an individual-usage
582
- // credential is owned by a specific user and can't be resolved without one.
583
- throw new CredentialRequiredError(`Running a ${subscriptionVendor} model requires a signed-in user with a personal subscription.`, { vendor: subscriptionVendor, reason: 'no_subscription' });
584
- }
585
- // Throws CredentialRequiredError(password_required) when the run has no live
586
- // activation — the dispatch path surfaces it as a clear, retriable failure.
587
- const leased = await this.deps.leasePersonalSubscriptionToken(executionId, context.initiatedByUserId, subscriptionVendor);
588
- secret = leased.secret;
589
- }
590
- else {
591
- if (!this.deps.leaseSubscriptionToken) {
592
- throw new Error(`The ${harness} harness is not configured on this deployment; connect a ` +
593
- `subscription token or pick a different model.`);
594
- }
595
- const leased = await this.deps.leaseSubscriptionToken(workspaceId, subscriptionVendor);
596
- subscriptionTokenId = leased.tokenId;
597
- secret = leased.secret;
598
- }
599
- // SECURITY/TRUST: unlike the Pi harness (short-lived, model-locked proxy session
600
- // token) this hands the RAW, long-lived subscription credential — a Claude OAuth
601
- // token or a full ChatGPT auth.json — to the resolved runner transport. For the
602
- // Cloudflare backend that is an ephemeral, managed per-run container. For a
603
- // self-hosted runner pool it is the WORKSPACE'S OWN BYO infra (it connected the
604
- // pool), so the credential stays within the workspace's trust domain — but a
605
- // workspace should only point its subscription-harness steps at a runner pool it
606
- // operates, since the credential leaves the backend to reach it.
607
- // Non-Anthropic Claude-Code vendors (GLM/Kimi/DeepSeek) need their Anthropic-
608
- // compatible base URL; Anthropic itself uses the OAuth token against api.anthropic.com.
609
- const baseUrl = SUBSCRIPTION_VENDORS[subscriptionVendor].baseUrl;
610
- return {
611
- auth: {
612
- harness,
613
- subscriptionToken: secret,
614
- ...(baseUrl ? { subscriptionBaseUrl: baseUrl } : {}),
615
- },
616
- ...(subscriptionTokenId ? { subscriptionTokenId } : {}),
617
- };
560
+ resolveAuth(context, args) {
561
+ return this.jobAuth.resolve({
562
+ ...args,
563
+ agentKind: context.agentKind,
564
+ ...(context.initiatedByUserId ? { initiatedByUserId: context.initiatedByUserId } : {}),
565
+ });
618
566
  }
619
567
  }
620
568
  //# sourceMappingURL=ContainerAgentExecutor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContainerAgentExecutor.js","sourceRoot":"","sources":["../../src/agents/ContainerAgentExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContainerAgentExecutor.js","sourceRoot":"","sources":["../../src/agents/ContainerAgentExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,163 @@
1
+ import type { EnvironmentProbeAgent, EnvironmentProbeDispatchCheck, EnvironmentProbeHandle, EnvironmentProbeRequest, EnvironmentProbeSurface, EnvironmentProbeUpdate, GitHubInstallationRepository, RepoProjectionRepository, TestSecretEntry } from '@cat-factory/kernel';
2
+ import type { ContainerJobAuthResolver } from './containerJobAuth.js';
3
+ import { type ContainerJobAccountingDeps } from './containerJobAccounting.js';
4
+ import type { ResolveSingleKindModel } from './singleKindModel.js';
5
+ import type { MintInstallationToken, ResolveRepoOrigin } from './repoTargeting.js';
6
+ import { type ResolveRunnerTransport } from './RunnerJobClient.js';
7
+ export interface ContainerEnvironmentProbeAgentDependencies {
8
+ /** Resolve which runner backend the probe dispatches to: the seam every container flow rides. */
9
+ resolveTransport: ResolveRunnerTransport;
10
+ /** Resolve which installation a workspace's repos live under (the prober's read-only clone). */
11
+ installationRepository: Pick<GitHubInstallationRepository, 'getByWorkspace'>;
12
+ /**
13
+ * The workspace's repo projection, read to turn `owner`/`name` into the neutral id the token
14
+ * scope speaks in. Required rather than optional for the reason the repairer states: it is the
15
+ * only thing between this container and an installation-wide credential.
16
+ */
17
+ repoRepository: Pick<RepoProjectionRepository, 'list'>;
18
+ /** Mints the short-lived clone token, scoped to the one repo the prober reads. */
19
+ mintInstallationToken: MintInstallationToken;
20
+ /**
21
+ * Which model this dispatch runs, resolved PER DISPATCH by the shared single-job resolution:
22
+ * the frame's own pin, else the workspace's model preset for the prober's kind, else the
23
+ * deployment's env routing: the precedence a pipeline step already gets.
24
+ *
25
+ * Per dispatch rather than per WIRING, because the answer is a per-workspace fact and the
26
+ * facade has none in hand when it builds this. It is also per SURFACE by construction, since
27
+ * the two probers ask under their own agent kinds ({@link environmentProbeAgentKind}): a
28
+ * deployment that pointed its browser prober at a vision-capable model and its HTTP one at a
29
+ * cheap text model still gets the split.
30
+ */
31
+ resolveModel: ResolveSingleKindModel;
32
+ /**
33
+ * The per-job auth channel, resolved from the model above: a short-lived, model-locked proxy
34
+ * session token for a Pi model, a leased subscription credential for a Claude Code / Codex one,
35
+ * or the ambient-CLI flag in native local mode.
36
+ *
37
+ * Shared with the step dispatcher rather than reimplemented, which is what makes a
38
+ * subscription-routed prober possible at all: this flow used to serve only the proxy branch, so
39
+ * a subscription model was refused at wiring and the whole feature was disabled for the
40
+ * deployment that had one.
41
+ */
42
+ auth: ContainerJobAuthResolver;
43
+ /**
44
+ * Where a settled job's tokens are recorded: the per-call telemetry rows, the leased pool token's
45
+ * usage-aware rotation counters, and the modeled quota cycle. The SAME collaborator the step
46
+ * executor files through, so a dry run's spend is readable exactly like a step's.
47
+ *
48
+ * Only a SUBSCRIPTION harness has anything to report here: a Pi job reaches its model through the
49
+ * LLM proxy, which is the single metering point for it and files the rows itself. That is
50
+ * precisely why this cannot be omitted now the prober can resolve a subscription model: the
51
+ * proxy sees nothing of that job. Absent ⇒ no channel is wired (a facade with no telemetry store
52
+ * and no pool), which every method here treats as the no-op it is.
53
+ */
54
+ accounting?: ContainerJobAccountingDeps;
55
+ /**
56
+ * Resolves the service frame's sealed test credentials. Absent ⇒ the deployment has no sealed
57
+ * store, which the prompt STATES as a DEPLOYMENT fact rather than omitting: a prober that cannot
58
+ * tell an unconfigured store from one it was not shown files the platform's own gap as its own
59
+ * ignorance, and `missingContext` is the field that gap belongs in. A store that is wired and
60
+ * will not OPEN is a third state, stated as such: the resolution and the three states are the
61
+ * SHARED `resolveTestCredentials` / `TestCredentialBrief` the tester step's dispatch uses, which
62
+ * is what makes a dry run's answer about authenticating here predict the tester's.
63
+ */
64
+ resolveTestSecrets?: (workspaceId: string, blockId: string) => Promise<TestSecretEntry[]>;
65
+ /**
66
+ * Where the container clones from, per VCS provider. Defaults to GitHub; a GitLab deployment
67
+ * injects `deploymentRepoOrigin` so the prober clones the right host instead of a same-named
68
+ * project on github.com.
69
+ */
70
+ resolveRepoOrigin?: ResolveRepoOrigin;
71
+ /** REST base for the clone host (Enterprise / api.github.com). */
72
+ githubApiBase?: string;
73
+ }
74
+ export declare class ContainerEnvironmentProbeAgent implements EnvironmentProbeAgent {
75
+ private readonly deps;
76
+ private readonly jobs;
77
+ private readonly accounting;
78
+ constructor(deps: ContainerEnvironmentProbeAgentDependencies);
79
+ /**
80
+ * Whether the workspace's resolved runner backend can serve this surface's executor image.
81
+ *
82
+ * The backend is asked because it is the only thing that knows: a Worker binds container
83
+ * classes, a local transport pins image tags, and a self-hosted pool resolves images on its own
84
+ * side and cannot answer at all. That last case answers TRUE (see the port): an unknown is not a
85
+ * refusal, and a deployment whose pool has no UI image still fails at dispatch exactly as every
86
+ * other container flow does there.
87
+ *
88
+ * A transport that cannot even be RESOLVED is `false`: a dry run needs a runner, and refusing at
89
+ * admission is the whole point of asking here.
90
+ */
91
+ supports(workspaceId: string, surface: EnvironmentProbeSurface): Promise<boolean>;
92
+ /**
93
+ * Whether the model this frame's dry run resolves to can actually be dispatched, run at ADMISSION
94
+ * over the same two steps `start` takes: resolve the model (which refuses a provider the LLM proxy
95
+ * cannot serve), then ask the auth resolver whether the harness that model names has a credential
96
+ * to open it.
97
+ *
98
+ * Asked here rather than left to the dispatch because both answers are already knowable, and
99
+ * neither is knowable cheaply later: reached from inside `stage.dispatch`, each one fails the run
100
+ * at `probing` after a throwaway branch, a full provision and a teardown, to report something the
101
+ * workspace's own preset said before anything was created.
102
+ *
103
+ * A resolution that THROWS is the refusal, carried verbatim: `resolveDispatchRef`'s message
104
+ * already names the fix (pick a Workers AI model, configure a provider key, add a local runner),
105
+ * and re-wording it here would hand the operator two spellings of one problem.
106
+ */
107
+ checkDispatchable(subject: {
108
+ workspaceId: string;
109
+ blockId: string;
110
+ surface: EnvironmentProbeSurface;
111
+ initiatedBy: string | null;
112
+ }): Promise<EnvironmentProbeDispatchCheck>;
113
+ start(request: EnvironmentProbeRequest): Promise<EnvironmentProbeHandle>;
114
+ poll(handle: EnvironmentProbeHandle): Promise<EnvironmentProbeUpdate>;
115
+ /**
116
+ * Everything a SETTLED job owes the ledger, run once the poll knows the job is terminal and
117
+ * BEFORE any of the failure branches return.
118
+ *
119
+ * Before them deliberately: a dry run that spent tokens and then failed (an evicted container, a
120
+ * reply with no JSON) is exactly the run an operator most needs the spend for, and it is the one
121
+ * whose numbers a `return` above this line would drop. The three writes are the step path's own,
122
+ * each idempotent per job id, so the durable driver's replay of a terminal poll cannot
123
+ * double-count.
124
+ *
125
+ * A Pi job reports none of this: the LLM proxy is its single metering point and files its rows
126
+ * itself, so every call here is a no-op for it and the whole method exists for the subscription
127
+ * harnesses, which talk to the vendor direct and are metered nowhere else.
128
+ */
129
+ private settleAccounting;
130
+ /**
131
+ * The dry run's handle as the shared accounting reads one.
132
+ *
133
+ * A self-test is a SINGLE-JOB flow, so the run and the job are one row and `runId` is the job id
134
+ * (which is what makes the recorded rows join to the self-test run the SPA renders). The model,
135
+ * the leased token and the initiator all come off the persisted dispatch attribution rather than
136
+ * being re-derived, for the reason `EnvironmentProbeDispatch` states.
137
+ */
138
+ private jobHandle;
139
+ stop(handle: EnvironmentProbeHandle): Promise<void>;
140
+ /**
141
+ * The model + harness + vendor this surface's prober runs on, asked under the prober's OWN agent
142
+ * kind.
143
+ *
144
+ * Its own kind rather than the tester's, which is what {@link environmentProbeAgentKind}
145
+ * documents: a workspace routes its probers by editing the preset entry named after them, and
146
+ * the START gate resolves an individual-usage vendor for that same kind. Borrowing `tester-api`
147
+ * here would put the gate and the dispatch on two different questions.
148
+ */
149
+ private resolveModel;
150
+ /**
151
+ * The job's address. The IMAGE is part of it on every call, not only the dispatch: see the
152
+ * class note on why a poll or release that drops it addresses the wrong container.
153
+ */
154
+ private ref;
155
+ /**
156
+ * The repo the prober's token may reach, as the neutral id the mint's scope speaks in. An empty
157
+ * result is returned rather than thrown, for the reason the repairer states: a projection
158
+ * lagging behind a just-linked repo is a reason to widen the token and report it, not to refuse
159
+ * a diagnostic the developer asked for.
160
+ */
161
+ private resolveRepoScope;
162
+ }
163
+ //# sourceMappingURL=ContainerEnvironmentProbeAgent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContainerEnvironmentProbeAgent.d.ts","sourceRoot":"","sources":["../../src/agents/ContainerEnvironmentProbeAgent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,qBAAqB,EACrB,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,4BAA4B,EAC5B,wBAAwB,EAIxB,eAAe,EAChB,MAAM,qBAAqB,CAAA;AAQ5B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,6BAA6B,CAAA;AAGpC,OAAO,KAAK,EAAE,sBAAsB,EAAmB,MAAM,sBAAsB,CAAA;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAElF,OAAO,EAAmB,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AA8DnF,MAAM,WAAW,0CAA0C;IACzD,iGAAiG;IACjG,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,gGAAgG;IAChG,sBAAsB,EAAE,IAAI,CAAC,4BAA4B,EAAE,gBAAgB,CAAC,CAAA;IAC5E;;;;OAIG;IACH,cAAc,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAA;IACtD,kFAAkF;IAClF,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C;;;;;;;;;;OAUG;IACH,YAAY,EAAE,sBAAsB,CAAA;IACpC;;;;;;;;;OASG;IACH,IAAI,EAAE,wBAAwB,CAAA;IAC9B;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,0BAA0B,CAAA;IACvC;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC,CAAA;IACzF;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,qBAAa,8BAA+B,YAAW,qBAAqB;IAI9D,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwB;IAEnD,YAA6B,IAAI,EAAE,0CAA0C,EAG5E;IAED;;;;;;;;;;;OAWG;IACG,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC,CAItF;IAED;;;;;;;;;;;;;;OAcG;IACG,iBAAiB,CAAC,OAAO,EAAE;QAC/B,WAAW,EAAE,MAAM,CAAA;QACnB,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,uBAAuB,CAAA;QAChC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;KAC3B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAczC;IAEK,KAAK,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAsJ7E;IAEK,IAAI,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA2D1E;IAED;;;;;;;;;;;;;OAaG;YACW,gBAAgB;IAW9B;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS;IAkBX,IAAI,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAExD;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,YAAY;IAYpB;;;OAGG;IACH,OAAO,CAAC,GAAG;IAKX;;;;;OAKG;YACW,gBAAgB;CAa/B"}