@cat-factory/server 0.79.4 → 0.81.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 (67) hide show
  1. package/dist/agents/CompositeAgentExecutor.d.ts +4 -1
  2. package/dist/agents/CompositeAgentExecutor.d.ts.map +1 -1
  3. package/dist/agents/CompositeAgentExecutor.js +10 -4
  4. package/dist/agents/CompositeAgentExecutor.js.map +1 -1
  5. package/dist/agents/ContainerAgentExecutor.d.ts +18 -1
  6. package/dist/agents/ContainerAgentExecutor.d.ts.map +1 -1
  7. package/dist/agents/ContainerAgentExecutor.js +83 -6
  8. package/dist/agents/ContainerAgentExecutor.js.map +1 -1
  9. package/dist/agents/ContainerRepoBootstrapper.d.ts +7 -1
  10. package/dist/agents/ContainerRepoBootstrapper.d.ts.map +1 -1
  11. package/dist/agents/ContainerRepoBootstrapper.js +1 -0
  12. package/dist/agents/ContainerRepoBootstrapper.js.map +1 -1
  13. package/dist/agents/containerAgentResult.d.ts.map +1 -1
  14. package/dist/agents/containerAgentResult.js +42 -4
  15. package/dist/agents/containerAgentResult.js.map +1 -1
  16. package/dist/agents/jobBody.d.ts +40 -3
  17. package/dist/agents/jobBody.d.ts.map +1 -1
  18. package/dist/agents/jobBody.js +167 -36
  19. package/dist/agents/jobBody.js.map +1 -1
  20. package/dist/agents/prompts.d.ts +2 -1
  21. package/dist/agents/prompts.d.ts.map +1 -1
  22. package/dist/agents/prompts.js +2 -2
  23. package/dist/agents/prompts.js.map +1 -1
  24. package/dist/agents/resolveRepoTarget.d.ts +68 -2
  25. package/dist/agents/resolveRepoTarget.d.ts.map +1 -1
  26. package/dist/agents/resolveRepoTarget.js +150 -39
  27. package/dist/agents/resolveRepoTarget.js.map +1 -1
  28. package/dist/github/FetchGitHubClient.d.ts +2 -1
  29. package/dist/github/FetchGitHubClient.d.ts.map +1 -1
  30. package/dist/github/FetchGitHubClient.js +33 -2
  31. package/dist/github/FetchGitHubClient.js.map +1 -1
  32. package/dist/github/GitHubCiStatusProvider.d.ts +10 -6
  33. package/dist/github/GitHubCiStatusProvider.d.ts.map +1 -1
  34. package/dist/github/GitHubCiStatusProvider.js +52 -28
  35. package/dist/github/GitHubCiStatusProvider.js.map +1 -1
  36. package/dist/github/GitHubMergeabilityProvider.d.ts +8 -8
  37. package/dist/github/GitHubMergeabilityProvider.d.ts.map +1 -1
  38. package/dist/github/GitHubMergeabilityProvider.js +40 -14
  39. package/dist/github/GitHubMergeabilityProvider.js.map +1 -1
  40. package/dist/github/GitHubPullRequestMerger.d.ts +11 -10
  41. package/dist/github/GitHubPullRequestMerger.d.ts.map +1 -1
  42. package/dist/github/GitHubPullRequestMerger.js +50 -30
  43. package/dist/github/GitHubPullRequestMerger.js.map +1 -1
  44. package/dist/github/repoFullName.d.ts +3 -0
  45. package/dist/github/repoFullName.d.ts.map +1 -0
  46. package/dist/github/repoFullName.js +6 -0
  47. package/dist/github/repoFullName.js.map +1 -0
  48. package/dist/http/env.d.ts +8 -0
  49. package/dist/http/env.d.ts.map +1 -1
  50. package/dist/index.d.ts +1 -1
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +1 -1
  53. package/dist/index.js.map +1 -1
  54. package/dist/modules/initiatives/InitiativeController.d.ts.map +1 -1
  55. package/dist/modules/initiatives/InitiativeController.js +37 -1
  56. package/dist/modules/initiatives/InitiativeController.js.map +1 -1
  57. package/dist/modules/publicApi/PublicApiController.d.ts.map +1 -1
  58. package/dist/modules/publicApi/PublicApiController.js +3 -3
  59. package/dist/modules/publicApi/PublicApiController.js.map +1 -1
  60. package/dist/modules/workspaces/WorkspaceController.d.ts.map +1 -1
  61. package/dist/modules/workspaces/WorkspaceController.js +11 -10
  62. package/dist/modules/workspaces/WorkspaceController.js.map +1 -1
  63. package/dist/persistence/mappers.d.ts +12 -1
  64. package/dist/persistence/mappers.d.ts.map +1 -1
  65. package/dist/persistence/mappers.js +45 -1
  66. package/dist/persistence/mappers.js.map +1 -1
  67. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agents/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agents/prompts.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { type BlockRepository, type GitHubInstallationRepository, type RepoProjectionRepository, type ServiceRepository } from '@cat-factory/kernel';
2
- import type { ResolveRepoTarget } from './ContainerAgentExecutor.js';
1
+ import { type BlockRepository, type GitHubInstallationRepository, type GitHubRepo, type GroupCacheHandle, type RepoProjectionRepository, type ServiceRepository } from '@cat-factory/kernel';
2
+ import type { RepoTarget, ResolveRepoTarget } from './ContainerAgentExecutor.js';
3
3
  export interface ResolveRepoTargetDependencies {
4
4
  installationRepository: Pick<GitHubInstallationRepository, 'getByWorkspace'>;
5
5
  repoProjectionRepository: Pick<RepoProjectionRepository, 'list'>;
@@ -10,6 +10,16 @@ export interface ResolveRepoTargetDependencies {
10
10
  * pins. Every facade wires it whenever GitHub is configured.
11
11
  */
12
12
  serviceRepository: Pick<ServiceRepository, 'getByFrameBlock'>;
13
+ /**
14
+ * Read-through cache for the workspace's whole repo projection
15
+ * (`AppCaches.repoProjection`, docs/initiatives/caching-layer.md slice 3), grouped
16
+ * AND keyed by workspace id. The unbounded `repoProjectionRepository.list` re-list
17
+ * this resolver runs on every dispatch and poll tick reads through it; the
18
+ * projection's write paths (GitHub sync/webhook, repo link/monorepo-flag, bootstrap)
19
+ * invalidate the workspace group after they commit. Absent (tests / the Worker's
20
+ * pass-through profile) ⇒ every resolve lists live.
21
+ */
22
+ repoProjectionCache?: GroupCacheHandle<GitHubRepo[]>;
13
23
  }
14
24
  /**
15
25
  * Resolve the repo linked to a running block's enclosing service, shared verbatim by
@@ -29,4 +39,60 @@ export interface ResolveRepoTargetDependencies {
29
39
  * because each wires its own resolver).
30
40
  */
31
41
  export declare function buildResolveRepoTarget(deps: ResolveRepoTargetDependencies): ResolveRepoTarget;
42
+ /**
43
+ * A single repo checkout a multi-repo run creates. Deduped by repo, so a monorepo hosting
44
+ * several involved services is ONE checkout carrying all of them.
45
+ */
46
+ export interface RepoCheckout {
47
+ target: RepoTarget;
48
+ /** The task's OWN service repo (the singular {@link ResolveRepoTarget} result). */
49
+ primary: boolean;
50
+ /**
51
+ * The involved service frames that live in THIS repo (their block id + the monorepo
52
+ * subdirectory each pins). Empty for a primary with no co-located involved service; ≥1
53
+ * for a peer; >1 when several involved services share one monorepo. Drives the multi-repo
54
+ * prompt section and the peer-PR frame attribution.
55
+ */
56
+ involved: {
57
+ frameId: string;
58
+ serviceDirectory?: string;
59
+ }[];
60
+ }
61
+ /** The deduped checkout set for a run, primary first. */
62
+ export interface ResolvedRepoTargets {
63
+ checkouts: RepoCheckout[];
64
+ }
65
+ export type ResolveRepoTargets = (workspaceId: string, primaryBlockId: string, involvedFrameIds: string[],
66
+ /**
67
+ * The task's OWN-service {@link RepoTarget}, when the caller already resolved it via the
68
+ * singular {@link ResolveRepoTarget} (the container executor does, to mint the push token).
69
+ * Passing it lets this resolver SKIP re-reading the installation and re-walking the primary
70
+ * block's ancestry — it reuses this as the primary checkout and only resolves the peers on
71
+ * top. Omit it and the primary is resolved from scratch (the ancestry walk), as before.
72
+ */
73
+ primaryTarget?: RepoTarget) => Promise<ResolvedRepoTargets>;
74
+ export interface ResolveRepoTargetsDependencies extends ResolveRepoTargetDependencies {
75
+ /**
76
+ * The batched form of {@link ResolveRepoTargetDependencies.serviceRepository} — resolving
77
+ * N involved frames' repos in ONE query rather than a point-read per frame. Required (the
78
+ * `Service` is the SOLE repo↔frame linkage), so an involved frame with no linked service
79
+ * simply resolves no repo and is skipped for coding.
80
+ */
81
+ serviceRepository: Pick<ServiceRepository, 'getByFrameBlock' | 'listByFrameBlocks'>;
82
+ }
83
+ /**
84
+ * Resolve every repo a multi-repo run touches: the task's OWN service (PRIMARY, via the same
85
+ * ancestry walk as {@link buildResolveRepoTarget}) plus one checkout per involved service
86
+ * frame — DEDUPED by repo. Two involved services in the same monorepo collapse into one
87
+ * checkout with BOTH subdirectories noted (the caller clones once and the agent edits both
88
+ * subtrees); an involved service sharing the primary's repo is folded into the primary
89
+ * checkout (no separate peer clone / PR — its changes ride the own-service PR).
90
+ *
91
+ * The invariant reads (installation + the whole projection) are hoisted ONCE and every
92
+ * involved frame's service is resolved in a single {@link ServiceRepository.listByFrameBlocks}
93
+ * batch (no point-read per frame). An involved frame with no linked repo is silently skipped
94
+ * for coding — it can still have provisioned an environment (the phase-2 asymmetry). The
95
+ * primary must resolve or we throw, exactly like the singular resolver.
96
+ */
97
+ export declare function buildResolveRepoTargets(deps: ResolveRepoTargetsDependencies): ResolveRepoTargets;
32
98
  //# sourceMappingURL=resolveRepoTarget.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveRepoTarget.d.ts","sourceRoot":"","sources":["../../src/agents/resolveRepoTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAMpE,MAAM,WAAW,6BAA6B;IAC5C,sBAAsB,EAAE,IAAI,CAAC,4BAA4B,EAAE,gBAAgB,CAAC,CAAA;IAC5E,wBAAwB,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAA;IAChE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAA;IAC7C;;;;OAIG;IACH,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAA;CAC9D;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,6BAA6B,GAAG,iBAAiB,CA2D7F"}
1
+ {"version":3,"file":"resolveRepoTarget.d.ts","sourceRoot":"","sources":["../../src/agents/resolveRepoTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,4BAA4B,EACjC,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAMhF,MAAM,WAAW,6BAA6B;IAC5C,sBAAsB,EAAE,IAAI,CAAC,4BAA4B,EAAE,gBAAgB,CAAC,CAAA;IAC5E,wBAAwB,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAA;IAChE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAA;IAC7C;;;;OAIG;IACH,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAA;IAC7D;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAA;CACrD;AAmED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,6BAA6B,GAAG,iBAAiB,CA6B7F;AAID;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,UAAU,CAAA;IAClB,mFAAmF;IACnF,OAAO,EAAE,OAAO,CAAA;IAChB;;;;;OAKG;IACH,QAAQ,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC3D;AAED,yDAAyD;AACzD,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,YAAY,EAAE,CAAA;CAC1B;AAED,MAAM,MAAM,kBAAkB,GAAG,CAC/B,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EAAE;AAC1B;;;;;;GAMG;AACH,aAAa,CAAC,EAAE,UAAU,KACvB,OAAO,CAAC,mBAAmB,CAAC,CAAA;AAEjC,MAAM,WAAW,8BAA+B,SAAQ,6BAA6B;IACnF;;;;;OAKG;IACH,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,mBAAmB,CAAC,CAAA;CACpF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,8BAA8B,GAAG,kBAAkB,CAoFhG"}
@@ -1,4 +1,50 @@
1
1
  import { ValidationError, } from '@cat-factory/kernel';
2
+ function indexRepos(repos) {
3
+ return {
4
+ byGithubId: new Map(repos.map((r) => [r.githubId, r])),
5
+ };
6
+ }
7
+ /**
8
+ * Walk up a block's ancestry to the enclosing service frame and resolve its repo via the
9
+ * account-owned {@link Service} for that frame (`getByFrameBlock` → `repoGithubId`). This is
10
+ * the SOLE linkage: the only mechanism that supports a MONOREPO (several frames each owning a
11
+ * service pinned to a different subdirectory of the SAME repo), and the only one carrying the
12
+ * per-service `directory`. Returns undefined when nothing in the chain is linked (the caller
13
+ * decides whether that is fatal — a throw for the primary, a skip for an involved peer).
14
+ * Shared verbatim by the singular {@link buildResolveRepoTarget} and plural
15
+ * {@link buildResolveRepoTargets} so the security-sensitive walk can't drift.
16
+ */
17
+ async function walkToRepo(deps, workspaceId, blockId, index) {
18
+ let cursor = blockId;
19
+ const seen = new Set();
20
+ while (cursor && !seen.has(cursor)) {
21
+ const service = await deps.serviceRepository.getByFrameBlock(cursor);
22
+ if (service?.repoGithubId != null) {
23
+ const repo = index.byGithubId.get(service.repoGithubId);
24
+ if (repo)
25
+ return { repo, directory: service.directory ?? null };
26
+ }
27
+ seen.add(cursor);
28
+ const block = await deps.blockRepository.get(workspaceId, cursor);
29
+ cursor = block?.parentId ?? null;
30
+ }
31
+ return undefined;
32
+ }
33
+ /**
34
+ * Turn a resolved repo into a {@link RepoTarget}. The subdirectory is fed to agents ONLY
35
+ * when the repo is flagged a monorepo: a single-service repo's service may carry a
36
+ * stale/irrelevant directory, but its agents must keep operating on the repo root.
37
+ */
38
+ function toRepoTarget(installationId, resolved) {
39
+ const serviceDirectory = resolved.repo.isMonorepo && resolved.directory ? resolved.directory : undefined;
40
+ return {
41
+ installationId,
42
+ owner: resolved.repo.owner,
43
+ name: resolved.repo.name,
44
+ baseBranch: resolved.repo.defaultBranch ?? 'main',
45
+ ...(serviceDirectory ? { serviceDirectory } : {}),
46
+ };
47
+ }
2
48
  /**
3
49
  * Resolve the repo linked to a running block's enclosing service, shared verbatim by
4
50
  * both runtime facades (Worker D1 + Node Drizzle/Postgres). Repos are linked at the
@@ -17,39 +63,21 @@ import { ValidationError, } from '@cat-factory/kernel';
17
63
  * because each wires its own resolver).
18
64
  */
19
65
  export function buildResolveRepoTarget(deps) {
20
- const { installationRepository, repoProjectionRepository, blockRepository, serviceRepository } = deps;
66
+ const { installationRepository, repoProjectionRepository, repoProjectionCache } = deps;
21
67
  return async (workspaceId, blockId) => {
22
68
  const installation = await installationRepository.getByWorkspace(workspaceId);
23
69
  if (!installation)
24
70
  return null;
25
- const repos = await repoProjectionRepository.list(workspaceId);
71
+ // The whole-projection re-list is the hot, unbounded read here — cache it per
72
+ // workspace. The installation lookup above and the block ancestry walk below stay
73
+ // live (both cheap / tree-depth-bounded), so a reparent or service repo-link
74
+ // change needs no cache invalidation; only the projection's own writes do.
75
+ const repos = repoProjectionCache
76
+ ? await repoProjectionCache.get(workspaceId, workspaceId, () => repoProjectionRepository.list(workspaceId))
77
+ : await repoProjectionRepository.list(workspaceId);
26
78
  if (repos.length === 0)
27
79
  return null;
28
- const reposByGithubId = new Map(repos.map((r) => [r.githubId, r]));
29
- // Walk up the block's ancestry to the enclosing service frame, then resolve its repo via
30
- // the account-owned `Service` for that frame (`getByFrameBlock` → `repoGithubId`). This is
31
- // the SOLE linkage: it is the only mechanism that supports a MONOREPO (several frames each
32
- // owning a service pinned to a different subdirectory of the SAME repo) and the only one
33
- // carrying the per-service `directory`. There is deliberately NO "first repo" fallback: a
34
- // workspace can have many repos, and guessing silently pushes work into the wrong one. If
35
- // nothing in the chain is linked we throw so the misconfiguration surfaces instead of
36
- // corrupting another repo.
37
- let resolved;
38
- let cursor = blockId;
39
- const seen = new Set();
40
- while (cursor && !seen.has(cursor)) {
41
- const service = await serviceRepository.getByFrameBlock(cursor);
42
- if (service?.repoGithubId != null) {
43
- const repo = reposByGithubId.get(service.repoGithubId);
44
- if (repo) {
45
- resolved = { repo, directory: service.directory ?? null };
46
- break;
47
- }
48
- }
49
- seen.add(cursor);
50
- const block = await blockRepository.get(workspaceId, cursor);
51
- cursor = block?.parentId ?? null;
52
- }
80
+ const resolved = await walkToRepo(deps, workspaceId, blockId, indexRepos(repos));
53
81
  if (!resolved) {
54
82
  // A typed domain error (not a bare Error) so callers can tell this DELIBERATE
55
83
  // "block isn't under a repo-linked service" outcome apart from an unexpected
@@ -59,18 +87,101 @@ export function buildResolveRepoTarget(deps) {
59
87
  `(workspace '${workspaceId}'). Link the service frame to its repo so execution ` +
60
88
  `targets the right repository instead of guessing one.`);
61
89
  }
62
- const { repo, directory } = resolved;
63
- // The subdirectory is fed to agents ONLY when the repo is flagged a monorepo: a
64
- // single-service repo's service may carry a stale/irrelevant directory, but its
65
- // agents must keep operating on the repo root (the historical behaviour).
66
- const serviceDirectory = repo.isMonorepo && directory ? directory : undefined;
67
- return {
68
- installationId: installation.installationId,
69
- owner: repo.owner,
70
- name: repo.name,
71
- baseBranch: repo.defaultBranch ?? 'main',
72
- ...(serviceDirectory ? { serviceDirectory } : {}),
73
- };
90
+ return toRepoTarget(installation.installationId, resolved);
91
+ };
92
+ }
93
+ /**
94
+ * Resolve every repo a multi-repo run touches: the task's OWN service (PRIMARY, via the same
95
+ * ancestry walk as {@link buildResolveRepoTarget}) plus one checkout per involved service
96
+ * frame — DEDUPED by repo. Two involved services in the same monorepo collapse into one
97
+ * checkout with BOTH subdirectories noted (the caller clones once and the agent edits both
98
+ * subtrees); an involved service sharing the primary's repo is folded into the primary
99
+ * checkout (no separate peer clone / PR — its changes ride the own-service PR).
100
+ *
101
+ * The invariant reads (installation + the whole projection) are hoisted ONCE and every
102
+ * involved frame's service is resolved in a single {@link ServiceRepository.listByFrameBlocks}
103
+ * batch (no point-read per frame). An involved frame with no linked repo is silently skipped
104
+ * for coding — it can still have provisioned an environment (the phase-2 asymmetry). The
105
+ * primary must resolve or we throw, exactly like the singular resolver.
106
+ */
107
+ export function buildResolveRepoTargets(deps) {
108
+ const { installationRepository, repoProjectionRepository, serviceRepository } = deps;
109
+ return async (workspaceId, primaryBlockId, involvedFrameIds, primaryTarget) => {
110
+ // The installation id: reuse the pre-resolved primary target's when provided (skips a second
111
+ // installation read), else read it here.
112
+ let installationId;
113
+ if (primaryTarget) {
114
+ installationId = primaryTarget.installationId;
115
+ }
116
+ else {
117
+ const installation = await installationRepository.getByWorkspace(workspaceId);
118
+ if (!installation) {
119
+ throw new ValidationError(`Workspace '${workspaceId}' has no GitHub installation, so a multi-repo run cannot ` +
120
+ `resolve its repositories.`);
121
+ }
122
+ installationId = installation.installationId;
123
+ }
124
+ const repos = await repoProjectionRepository.list(workspaceId);
125
+ const index = indexRepos(repos);
126
+ // The primary checkout: reuse the caller's already-resolved target when given (no ancestry
127
+ // walk), else walk the primary block's ancestry from scratch.
128
+ let primaryCheckout;
129
+ if (primaryTarget) {
130
+ primaryCheckout = { target: primaryTarget, primary: true, involved: [] };
131
+ }
132
+ else {
133
+ const primary = repos.length
134
+ ? await walkToRepo(deps, workspaceId, primaryBlockId, index)
135
+ : undefined;
136
+ if (!primary) {
137
+ throw new ValidationError(`Block '${primaryBlockId}' is not under a service linked to a GitHub repository ` +
138
+ `(workspace '${workspaceId}'). Link the service frame to its repo so execution ` +
139
+ `targets the right repository instead of guessing one.`);
140
+ }
141
+ primaryCheckout = {
142
+ target: toRepoTarget(installationId, primary),
143
+ primary: true,
144
+ involved: [],
145
+ };
146
+ }
147
+ const checkouts = [primaryCheckout];
148
+ const key = (t) => `${t.owner}/${t.name}`;
149
+ const byKey = new Map([[key(primaryCheckout.target), primaryCheckout]]);
150
+ // Resolve every involved frame's service in one batch (frames ARE service frame blocks,
151
+ // so no ancestry walk is needed — the frame's own service names its repo + directory).
152
+ const uniqueFrameIds = [...new Set(involvedFrameIds)];
153
+ const services = await serviceRepository.listByFrameBlocks(uniqueFrameIds);
154
+ const serviceByFrame = new Map(services.map((s) => [s.frameBlockId, s]));
155
+ for (const frameId of uniqueFrameIds) {
156
+ const service = serviceByFrame.get(frameId);
157
+ const resolved = service?.repoGithubId != null && index.byGithubId.has(service.repoGithubId)
158
+ ? {
159
+ repo: index.byGithubId.get(service.repoGithubId),
160
+ directory: service.directory ?? null,
161
+ }
162
+ : undefined;
163
+ // An involved frame with no linked repo is skipped for coding (deliberate asymmetry:
164
+ // it may still have provisioned an environment in phase 2).
165
+ if (!resolved)
166
+ continue;
167
+ const target = toRepoTarget(installationId, resolved);
168
+ const entry = byKey.get(key(target));
169
+ const involvedEntry = {
170
+ frameId,
171
+ ...(target.serviceDirectory ? { serviceDirectory: target.serviceDirectory } : {}),
172
+ };
173
+ if (entry) {
174
+ // Same repo as the primary or an earlier peer (a shared monorepo) → one checkout,
175
+ // note this service's subdirectory alongside the others.
176
+ entry.involved.push(involvedEntry);
177
+ }
178
+ else {
179
+ const checkout = { target, primary: false, involved: [involvedEntry] };
180
+ checkouts.push(checkout);
181
+ byKey.set(key(target), checkout);
182
+ }
183
+ }
184
+ return { checkouts };
74
185
  };
75
186
  }
76
187
  //# sourceMappingURL=resolveRepoTarget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveRepoTarget.js","sourceRoot":"","sources":["../../src/agents/resolveRepoTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAKhB,MAAM,qBAAqB,CAAA;AAmB5B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAmC;IACxE,MAAM,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,eAAe,EAAE,iBAAiB,EAAE,GAC5F,IAAI,CAAA;IACN,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;QACpC,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAC7E,IAAI,CAAC,YAAY;YAAE,OAAO,IAAI,CAAA;QAC9B,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QACnC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAElE,yFAAyF;QACzF,2FAA2F;QAC3F,2FAA2F;QAC3F,yFAAyF;QACzF,0FAA0F;QAC1F,0FAA0F;QAC1F,sFAAsF;QACtF,2BAA2B;QAC3B,IAAI,QAAgF,CAAA;QACpF,IAAI,MAAM,GAAkB,OAAO,CAAA;QACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;QAC9B,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;YAC/D,IAAI,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,CAAC;gBAClC,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;gBACtD,IAAI,IAAI,EAAE,CAAC;oBACT,QAAQ,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE,CAAA;oBACzD,MAAK;gBACP,CAAC;YACH,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAChB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;YAC5D,MAAM,GAAG,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAA;QAClC,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,8EAA8E;YAC9E,6EAA6E;YAC7E,gFAAgF;YAChF,+EAA+E;YAC/E,MAAM,IAAI,eAAe,CACvB,UAAU,OAAO,yDAAyD;gBACxE,eAAe,WAAW,sDAAsD;gBAChF,uDAAuD,CAC1D,CAAA;QACH,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAA;QACpC,gFAAgF;QAChF,gFAAgF;QAChF,0EAA0E;QAC1E,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;QAC7E,OAAO;YACL,cAAc,EAAE,YAAY,CAAC,cAAc;YAC3C,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,UAAU,EAAE,IAAI,CAAC,aAAa,IAAI,MAAM;YACxC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClD,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"resolveRepoTarget.js","sourceRoot":"","sources":["../../src/agents/resolveRepoTarget.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ export declare class FetchGitHubClient implements GitHubClient {
47
47
  listIssues(installationId: number, ref: GitHubRepoRef, opts?: ListOptions): Promise<Paged<GitHubIssue>>;
48
48
  getIssue(installationId: number, ref: GitHubRepoRef, issueNumber: number): Promise<GitHubIssueDetail>;
49
49
  listSubIssues(installationId: number, ref: GitHubRepoRef, issueNumber: number): Promise<GitHubSubIssue[]>;
50
- searchIssues(installationId: number, query: string, limit?: number): Promise<GitHubIssueSearchHit[]>;
50
+ searchIssues(installationId: number, query: string, limit?: number, order?: 'created-asc', page?: number): Promise<GitHubIssueSearchHit[]>;
51
51
  searchCode(installationId: number, query: string, limit?: number): Promise<GitHubCodeSearchHit[]>;
52
52
  listCommits(installationId: number, ref: GitHubRepoRef, opts?: ListOptions & {
53
53
  sha?: string;
@@ -90,6 +90,7 @@ export declare class FetchGitHubClient implements GitHubClient {
90
90
  deleteBranch(installationId: number, ref: GitHubRepoRef, branch: string): Promise<void>;
91
91
  comment(installationId: number, ref: GitHubRepoRef, issueOrPrNumber: number, body: string): Promise<void>;
92
92
  closeIssue(installationId: number, ref: GitHubRepoRef, number: number): Promise<void>;
93
+ applyIssueLabel(installationId: number, ref: GitHubRepoRef, number: number, label: string): Promise<void>;
93
94
  /**
94
95
  * POST a GraphQL query/mutation to the v4 endpoint with the installation token and return
95
96
  * `data`, throwing on a GraphQL `errors` payload. Used for the review-thread reads/mutations
@@ -1 +1 @@
1
- {"version":3,"file":"FetchGitHubClient.d.ts","sourceRoot":"","sources":["../../src/github/FetchGitHubClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FetchGitHubClient.d.ts","sourceRoot":"","sources":["../../src/github/FetchGitHubClient.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ const API_VERSION = '2022-11-28';
5
5
  const ACCEPT = 'application/vnd.github+json';
6
6
  const PER_PAGE = 100;
7
7
  const MAX_PAGES = 10;
8
+ /** Neutral default colour for a label we create on the fly (GitHub requires a colour). */
9
+ const DEFAULT_LABEL_COLOR = 'ededed';
8
10
  export class FetchGitHubClient {
9
11
  deps;
10
12
  constructor(deps) {
@@ -402,10 +404,16 @@ export class FetchGitHubClient {
402
404
  return out;
403
405
  });
404
406
  }
405
- async searchIssues(installationId, query, limit = 20) {
407
+ async searchIssues(installationId, query, limit = 20, order, page = 1) {
406
408
  const q = encodeURIComponent(`${query} is:issue`);
407
409
  const per = Math.min(Math.max(limit, 1), 100);
408
- const { json } = await this.request(`/search/issues?q=${q}&per_page=${per}`, { installationId });
410
+ // Oldest-first (issue intake) rides the search API's sort/order params the
411
+ // in-query `sort:` syntax is a web-UI affordance the REST API doesn't honor.
412
+ const sort = order === 'created-asc' ? '&sort=created&order=asc' : '';
413
+ const pageParam = page > 1 ? `&page=${page}` : '';
414
+ const { json } = await this.request(`/search/issues?q=${q}&per_page=${per}${sort}${pageParam}`, {
415
+ installationId,
416
+ });
409
417
  const items = (json?.items ?? []).filter((i) => !i.pull_request);
410
418
  const hits = [];
411
419
  for (const item of items) {
@@ -700,6 +708,29 @@ export class FetchGitHubClient {
700
708
  body: { state: 'closed', state_reason: 'completed' },
701
709
  });
702
710
  }
711
+ async applyIssueLabel(installationId, ref, number, label) {
712
+ // Ensure the label exists first — a 422 means it already does, which is fine.
713
+ // (Relying on the add-labels endpoint to auto-create is undocumented behaviour.)
714
+ // GitHub's create-label endpoint requires BOTH `name` and `color`; omitting the
715
+ // colour makes every create fail 422 (missing field), which the catch below would
716
+ // otherwise mistake for "already exists" — so send a neutral default colour.
717
+ try {
718
+ await this.request(`/repos/${ref.owner}/${ref.repo}/labels`, {
719
+ installationId,
720
+ method: 'POST',
721
+ body: { name: label, color: DEFAULT_LABEL_COLOR },
722
+ });
723
+ }
724
+ catch (err) {
725
+ if (!(err instanceof GitHubApiError && err.status === 422))
726
+ throw err;
727
+ }
728
+ await this.request(`/repos/${ref.owner}/${ref.repo}/issues/${number}/labels`, {
729
+ installationId,
730
+ method: 'POST',
731
+ body: { labels: [label] },
732
+ });
733
+ }
703
734
  // ---- internals ----------------------------------------------------------
704
735
  /**
705
736
  * POST a GraphQL query/mutation to the v4 endpoint with the installation token and return