@revisium/orchestrator 0.2.0-alpha.4 → 0.2.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/control-plane/bootstrap.config.json +5 -1
- package/control-plane/default-playbook/catalog/pipelines.json +51 -0
- package/control-plane/default-playbook/catalog/roles.json +1 -1
- package/control-plane/default-playbook/catalog/run-profiles.json +130 -0
- package/control-plane/default-playbook/prompts/integrator.md +1 -1
- package/dist/__generated__/client/internal/class.js +4 -4
- package/dist/__generated__/client/internal/class.js.map +1 -1
- package/dist/__generated__/client/internal/prismaNamespace.js +0 -1
- package/dist/__generated__/client/internal/prismaNamespace.js.map +1 -1
- package/dist/__generated__/client/internal/prismaNamespaceBrowser.js +0 -1
- package/dist/__generated__/client/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/api/graphql-api/inbox/inputs/resolve-gate.input.js +9 -0
- package/dist/api/graphql-api/inbox/inputs/resolve-gate.input.js.map +1 -1
- package/dist/api/graphql-api/method/inputs/create-run-profile.input.js +54 -0
- package/dist/api/graphql-api/method/inputs/create-run-profile.input.js.map +1 -0
- package/dist/api/graphql-api/method/inputs/deprecate-run-profile.input.js +37 -0
- package/dist/api/graphql-api/method/inputs/deprecate-run-profile.input.js.map +1 -0
- package/dist/api/graphql-api/method/inputs/get-run-profile.input.js +32 -0
- package/dist/api/graphql-api/method/inputs/get-run-profile.input.js.map +1 -0
- package/dist/api/graphql-api/method/inputs/list-run-profiles.input.js +33 -0
- package/dist/api/graphql-api/method/inputs/list-run-profiles.input.js.map +1 -0
- package/dist/api/graphql-api/method/inputs/update-run-profile.input.js +59 -0
- package/dist/api/graphql-api/method/inputs/update-run-profile.input.js.map +1 -0
- package/dist/api/graphql-api/method/inputs/validate-run-profile.input.js +33 -0
- package/dist/api/graphql-api/method/inputs/validate-run-profile.input.js.map +1 -0
- package/dist/api/graphql-api/method/method.resolver.js +76 -1
- package/dist/api/graphql-api/method/method.resolver.js.map +1 -1
- package/dist/api/graphql-api/method/model/run-profile-connection.model.js +16 -0
- package/dist/api/graphql-api/method/model/run-profile-connection.model.js.map +1 -0
- package/dist/api/graphql-api/method/model/run-profile-status.model.js +6 -0
- package/dist/api/graphql-api/method/model/run-profile-status.model.js.map +1 -0
- package/dist/api/graphql-api/method/model/run-profile.model.js +79 -0
- package/dist/api/graphql-api/method/model/run-profile.model.js.map +1 -0
- package/dist/api/graphql-api/registerGraphqlEnums.js +4 -0
- package/dist/api/graphql-api/registerGraphqlEnums.js.map +1 -1
- package/dist/api/graphql-api/runs/inputs/create-run.input.js +6 -7
- package/dist/api/graphql-api/runs/inputs/create-run.input.js.map +1 -1
- package/dist/api/graphql-api/runs/inputs/simulate-route.input.js +6 -7
- package/dist/api/graphql-api/runs/inputs/simulate-route.input.js.map +1 -1
- package/dist/control-plane/default-playbook-policy.js +2 -11
- package/dist/control-plane/default-playbook-policy.js.map +1 -1
- package/dist/control-plane/engine-transport.js +2 -0
- package/dist/control-plane/engine-transport.js.map +1 -1
- package/dist/control-plane/json-fields.js +1 -1
- package/dist/control-plane/json-fields.js.map +1 -1
- package/dist/control-plane/pipeline-coverage-registry.js +26 -18
- package/dist/control-plane/pipeline-coverage-registry.js.map +1 -1
- package/dist/control-plane/run-profiles.js +101 -15
- package/dist/control-plane/run-profiles.js.map +1 -1
- package/dist/control-plane/transport.js.map +1 -1
- package/dist/control-plane/versioned-meaning.js +18 -3
- package/dist/control-plane/versioned-meaning.js.map +1 -1
- package/dist/e2e/kit/agents.js +3 -2
- package/dist/e2e/kit/agents.js.map +1 -1
- package/dist/e2e/kit/assertions.js +2 -2
- package/dist/e2e/kit/crash.js +8 -4
- package/dist/e2e/kit/crash.js.map +1 -1
- package/dist/e2e/kit/drive.js.map +1 -1
- package/dist/e2e/kit/fake-integrator.js +3 -36
- package/dist/e2e/kit/fake-integrator.js.map +1 -1
- package/dist/e2e/kit/gh-emulator.js +8 -2
- package/dist/e2e/kit/gh-emulator.js.map +1 -1
- package/dist/e2e/kit/index.js +1 -0
- package/dist/e2e/kit/index.js.map +1 -1
- package/dist/e2e/kit/run-profiles.js +50 -0
- package/dist/e2e/kit/run-profiles.js.map +1 -0
- package/dist/e2e/kit/scenario.js +48 -6
- package/dist/e2e/kit/scenario.js.map +1 -1
- package/dist/e2e/kit/scenarios.js +26 -27
- package/dist/e2e/kit/scenarios.js.map +1 -1
- package/dist/e2e/recovery-crash-child.js +2 -2
- package/dist/e2e/recovery-crash-child.js.map +1 -1
- package/dist/e2e/recovery-dd-crash-child.js +8 -6
- package/dist/e2e/recovery-dd-crash-child.js.map +1 -1
- package/dist/features/inbox/commands/impl/resolve-gate.command.js.map +1 -1
- package/dist/features/method/commands/handlers/method-command.handlers.js +64 -0
- package/dist/features/method/commands/handlers/method-command.handlers.js.map +1 -0
- package/dist/features/method/commands/impl/create-run-profile.command.js +7 -0
- package/dist/features/method/commands/impl/create-run-profile.command.js.map +1 -0
- package/dist/features/method/commands/impl/deprecate-run-profile.command.js +7 -0
- package/dist/features/method/commands/impl/deprecate-run-profile.command.js.map +1 -0
- package/dist/features/method/commands/impl/update-run-profile.command.js +7 -0
- package/dist/features/method/commands/impl/update-run-profile.command.js.map +1 -0
- package/dist/features/method/commands/index.js +6 -1
- package/dist/features/method/commands/index.js.map +1 -1
- package/dist/features/method/method-api.service.js +31 -3
- package/dist/features/method/method-api.service.js.map +1 -1
- package/dist/features/method/queries/handlers/method-query.handlers.js +58 -1
- package/dist/features/method/queries/handlers/method-query.handlers.js.map +1 -1
- package/dist/features/method/queries/impl/get-run-profile.query.js +7 -0
- package/dist/features/method/queries/impl/get-run-profile.query.js.map +1 -0
- package/dist/features/method/queries/impl/list-run-profiles.query.js +7 -0
- package/dist/features/method/queries/impl/list-run-profiles.query.js.map +1 -0
- package/dist/features/method/queries/impl/validate-run-profile.query.js +7 -0
- package/dist/features/method/queries/impl/validate-run-profile.query.js.map +1 -0
- package/dist/features/method/queries/index.js +4 -1
- package/dist/features/method/queries/index.js.map +1 -1
- package/dist/features/runs/commands/impl/create-run.command.js.map +1 -1
- package/dist/features/runs/queries/impl/simulate-route.query.js.map +1 -1
- package/dist/features/shared/connection.js +6 -3
- package/dist/features/shared/connection.js.map +1 -1
- package/dist/mcp/mcp-capabilities.js +5 -0
- package/dist/mcp/mcp-capabilities.js.map +1 -1
- package/dist/mcp/mcp-facade.service.js +34 -12
- package/dist/mcp/mcp-facade.service.js.map +1 -1
- package/dist/mcp/mcp-tool-result.js +22 -0
- package/dist/mcp/mcp-tool-result.js.map +1 -0
- package/dist/mcp/mcp-tools.js +90 -17
- package/dist/mcp/mcp-tools.js.map +1 -1
- package/dist/pipeline/await-human.js +27 -8
- package/dist/pipeline/await-human.js.map +1 -1
- package/dist/pipeline/data-driven-task.workflow.js +318 -69
- package/dist/pipeline/data-driven-task.workflow.js.map +1 -1
- package/dist/pipeline/pipeline.service.js +4 -10
- package/dist/pipeline/pipeline.service.js.map +1 -1
- package/dist/pipeline/route-contract.js +22 -101
- package/dist/pipeline/route-contract.js.map +1 -1
- package/dist/playbook/catalog-loader.js +1 -1
- package/dist/playbook/catalog-loader.js.map +1 -1
- package/dist/playbook/catalog-schema-validator.js +69 -39
- package/dist/playbook/catalog-schema-validator.js.map +1 -1
- package/dist/playbook/import-mapper.js +20 -9
- package/dist/playbook/import-mapper.js.map +1 -1
- package/dist/revisium/playbooks.service.js +208 -13
- package/dist/revisium/playbooks.service.js.map +1 -1
- package/dist/run/create-run.js +0 -3
- package/dist/run/create-run.js.map +1 -1
- package/dist/run/inspect-run.js +1 -1
- package/dist/run/inspect-run.js.map +1 -1
- package/dist/run/prisma-runtime-data-access.js +0 -3
- package/dist/run/prisma-runtime-data-access.js.map +1 -1
- package/dist/runners/gh-identity.js +29 -7
- package/dist/runners/gh-identity.js.map +1 -1
- package/dist/runners/integrator.js +73 -71
- package/dist/runners/integrator.js.map +1 -1
- package/dist/storage/ensure-storage.js +2 -1
- package/dist/storage/ensure-storage.js.map +1 -1
- package/dist/task-control-plane/task-control-plane-api.service.js +410 -159
- package/dist/task-control-plane/task-control-plane-api.service.js.map +1 -1
- package/dist/worker/claude-code-runner.js +1 -3
- package/dist/worker/claude-code-runner.js.map +1 -1
- package/package.json +1 -1
- package/prisma/migrations/20260707103000_prisma_runtime_tables/migration.sql +0 -1
- package/prisma/schema.prisma +16 -17
- package/dist/api/graphql-api/runs/inputs/execution-profile.input.js +0 -85
- package/dist/api/graphql-api/runs/inputs/execution-profile.input.js.map +0 -1
|
@@ -1,10 +1,24 @@
|
|
|
1
1
|
import { execFileSync } from 'node:child_process';
|
|
2
|
-
export const DEFAULT_GH_ACCOUNT = 'revisium-io';
|
|
3
2
|
const defaultExecFile = (file, args, opts) => execFileSync(file, args, opts);
|
|
4
|
-
export function resolveGhAccount(
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
export function resolveGhAccount(input = {}) {
|
|
4
|
+
const explicit = input.account?.trim();
|
|
5
|
+
if (explicit)
|
|
6
|
+
return explicit;
|
|
7
|
+
const env = input.env ?? process.env;
|
|
8
|
+
const envAccount = env['REVO_GH_ACCOUNT']?.trim();
|
|
9
|
+
if (envAccount)
|
|
10
|
+
return envAccount;
|
|
11
|
+
const execFile = input.execFile ?? defaultExecFile;
|
|
12
|
+
try {
|
|
13
|
+
const out = execFile('gh', ['api', 'user', '--jq', '.login'], {
|
|
14
|
+
encoding: 'utf8',
|
|
15
|
+
timeout: 15_000,
|
|
16
|
+
}).trim();
|
|
17
|
+
return out.length > 0 ? out : undefined;
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
8
22
|
}
|
|
9
23
|
export function ghTokenEnvKey(account) {
|
|
10
24
|
return `GH_TOKEN_${account.toUpperCase().replace(/[^A-Z0-9]+/g, '_')}`;
|
|
@@ -36,7 +50,15 @@ export function makeExecGh(opts) {
|
|
|
36
50
|
}
|
|
37
51
|
export function resolvePinnedGh(deps) {
|
|
38
52
|
const env = deps?.env ?? process.env;
|
|
39
|
-
const account = resolveGhAccount(env);
|
|
53
|
+
const account = resolveGhAccount({ account: deps?.account, env, execFile: deps?.execFile });
|
|
54
|
+
if (!account) {
|
|
55
|
+
return {
|
|
56
|
+
needsHuman: true,
|
|
57
|
+
lesson: 'could not resolve a gh account from the run profile, REVO_GH_ACCOUNT, or active gh auth — REFUSING to ' +
|
|
58
|
+
'fall back to an ambient or hardcoded account. Fix: set accounts.github in the run profile, set ' +
|
|
59
|
+
'REVO_GH_ACCOUNT, or authenticate gh on this host.',
|
|
60
|
+
};
|
|
61
|
+
}
|
|
40
62
|
const token = resolveGhToken(account, { env, execFile: deps?.execFile });
|
|
41
63
|
if (!token) {
|
|
42
64
|
return {
|
|
@@ -47,7 +69,7 @@ export function resolvePinnedGh(deps) {
|
|
|
47
69
|
`reach the keychain.`,
|
|
48
70
|
};
|
|
49
71
|
}
|
|
50
|
-
return { execGh: makeExecGh({ token, env, execFile: deps?.execFile }) };
|
|
72
|
+
return { account, execGh: makeExecGh({ token, env, execFile: deps?.execFile }) };
|
|
51
73
|
}
|
|
52
74
|
const TOKEN_PATTERN = /\b(?:gh[opsru]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})\b/g;
|
|
53
75
|
export function redactTokens(text) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gh-identity.js","sourceRoot":"","sources":["../../src/runners/gh-identity.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"gh-identity.js","sourceRoot":"","sources":["../../src/runners/gh-identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ import { execFileSync } from 'node:child_process';
|
|
|
15
15
|
import { collectPrReadiness, fetchRequiredCheckNames, GITHUB_CHECK_ROLLUP_UNAVAILABLE, } from '../poller/pr-readiness-core.js';
|
|
16
16
|
import { RunService } from '../revisium/run.service.js';
|
|
17
17
|
import { hasClosingIssueReference, hasIssueRefToken, issueBodyWithClosingReference, issueRefTag, } from '../run/issue-ref.js';
|
|
18
|
-
import {
|
|
18
|
+
import { redactTokens, resolvePinnedGh } from './gh-identity.js';
|
|
19
19
|
import { gitAbsPath, branchExists, countAhead } from './integrator-git.js';
|
|
20
20
|
import { resolveOwnerRepo } from './integrator-remote.js';
|
|
21
21
|
import { branchName } from './integrator-branch-naming.js';
|
|
@@ -169,8 +169,9 @@ function findOrCreatePr(ownerRepo, branch, base, title, issueRef, issueAction, e
|
|
|
169
169
|
function findExistingPrWithHead(ownerRepo, branch, base, execGh) {
|
|
170
170
|
return matchingOpenPr(ownerRepo, branch, base, execGh, 'number,url,baseRefName,headRefOid,title,body,author');
|
|
171
171
|
}
|
|
172
|
-
function foreignPrProvenance(author) {
|
|
173
|
-
|
|
172
|
+
function foreignPrProvenance(author, integratorAccount) {
|
|
173
|
+
if (!integratorAccount)
|
|
174
|
+
return {};
|
|
174
175
|
if (!author || author.toLowerCase() === integratorAccount.toLowerCase())
|
|
175
176
|
return {};
|
|
176
177
|
return { foreignPr: true, prAuthor: author, integratorAccount };
|
|
@@ -195,12 +196,12 @@ function existingProducedChangeOutput(context, existing, provenance, status) {
|
|
|
195
196
|
function reuseExistingProducedChangePr(context, existing) {
|
|
196
197
|
if (existing.headSha !== context.change.headSha)
|
|
197
198
|
return null;
|
|
198
|
-
const provenance = foreignPrProvenance(existing.author);
|
|
199
|
+
const provenance = foreignPrProvenance(existing.author, context.integratorAccount);
|
|
199
200
|
repairProducedChangePr(context, existing, provenance);
|
|
200
201
|
return existingProducedChangeOutput(context, existing, provenance, 'noop');
|
|
201
202
|
}
|
|
202
203
|
function updateExistingProducedChangePr(context, existing) {
|
|
203
|
-
const provenance = foreignPrProvenance(existing.author);
|
|
204
|
+
const provenance = foreignPrProvenance(existing.author, context.integratorAccount);
|
|
204
205
|
repairProducedChangePr(context, existing, provenance);
|
|
205
206
|
return existingProducedChangeOutput(context, existing, provenance, 'pushed');
|
|
206
207
|
}
|
|
@@ -258,14 +259,6 @@ export async function preflightLive(taskId, base, deps) {
|
|
|
258
259
|
}
|
|
259
260
|
return { ok: true };
|
|
260
261
|
}
|
|
261
|
-
export function stubIntegrate(input) {
|
|
262
|
-
return {
|
|
263
|
-
prUrl: 'stub://pr/placeholder',
|
|
264
|
-
branch: `feat/${input.taskId}-stub`,
|
|
265
|
-
prNumber: 0,
|
|
266
|
-
...(input.issueRef ? { issueRef: input.issueRef } : {}),
|
|
267
|
-
};
|
|
268
|
-
}
|
|
269
262
|
export async function captureProducedChange(input, deps) {
|
|
270
263
|
const { execGit: git, resolveRunCwd } = deps;
|
|
271
264
|
const cwd = await resolveRunCwd(input.runId, input.taskId);
|
|
@@ -364,7 +357,7 @@ async function integrateProducedChange(input, deps, change) {
|
|
|
364
357
|
const existing = findExistingPrWithHead(ownerRepo, branch, input.base, gh);
|
|
365
358
|
if (existing && 'needsHuman' in existing)
|
|
366
359
|
return existing;
|
|
367
|
-
const prContext = { ownerRepo, branch, title: input.title, issueRef, issueAction, change, execGh: gh };
|
|
360
|
+
const prContext = { ownerRepo, branch, title: input.title, integratorAccount: input.githubAccount, issueRef, issueAction, change, execGh: gh };
|
|
368
361
|
if (existing) {
|
|
369
362
|
const reused = reuseExistingProducedChangePr(prContext, existing);
|
|
370
363
|
if (reused)
|
|
@@ -400,6 +393,26 @@ function mergeabilityForConfirmMerge(pr, overrideAccepted) {
|
|
|
400
393
|
const mergeable = pr.mergeable ?? (pr.mergeStateStatus === 'CLEAN' ? 'MERGEABLE' : undefined);
|
|
401
394
|
return mergeSignal(pr.mergeStateStatus, mergeable);
|
|
402
395
|
}
|
|
396
|
+
function readyFailureIsBenign(message) {
|
|
397
|
+
return /not a draft|already ready(?: for review)?/i.test(message);
|
|
398
|
+
}
|
|
399
|
+
function markPrReadyForReview(input) {
|
|
400
|
+
try {
|
|
401
|
+
input.gh(['pr', 'ready', input.branch, '--repo', input.ownerRepo]);
|
|
402
|
+
return undefined;
|
|
403
|
+
}
|
|
404
|
+
catch (err) {
|
|
405
|
+
const raw = err instanceof Error ? err.message : String(err);
|
|
406
|
+
if (readyFailureIsBenign(raw))
|
|
407
|
+
return undefined;
|
|
408
|
+
const account = input.githubAccount ?? 'resolved-host-account';
|
|
409
|
+
return {
|
|
410
|
+
needsHuman: true,
|
|
411
|
+
lesson: `failed to mark PR #${input.prNumber ?? 'unknown'} ready for review ` +
|
|
412
|
+
`(githubAccount=${account}, repo=${input.ownerRepo}, branch=${input.branch}): ${redactTokens(raw || 'gh pr ready failed')}`,
|
|
413
|
+
};
|
|
414
|
+
}
|
|
415
|
+
}
|
|
403
416
|
export async function confirmMerge(input, deps) {
|
|
404
417
|
const { execGit: git, execGh: gh, resolveRunCwd } = deps;
|
|
405
418
|
const cwd = await resolveRunCwd(input.runId, input.taskId);
|
|
@@ -447,7 +460,15 @@ export async function confirmMerge(input, deps) {
|
|
|
447
460
|
};
|
|
448
461
|
}
|
|
449
462
|
if (pr.isDraft) {
|
|
450
|
-
|
|
463
|
+
const readyFailure = markPrReadyForReview({
|
|
464
|
+
gh,
|
|
465
|
+
branch,
|
|
466
|
+
ownerRepo,
|
|
467
|
+
prNumber: pr.number,
|
|
468
|
+
...(input.githubAccount ? { githubAccount: input.githubAccount } : {}),
|
|
469
|
+
});
|
|
470
|
+
if (readyFailure)
|
|
471
|
+
return readyFailure;
|
|
451
472
|
}
|
|
452
473
|
try {
|
|
453
474
|
gh(['pr', 'merge', branch, '--repo', ownerRepo, '--squash', '--delete-branch', '--match-head-commit', expectedHeadSha]);
|
|
@@ -903,8 +924,25 @@ export async function pollPr(input, deps) {
|
|
|
903
924
|
const { ownerRepo } = ownerRepoResult;
|
|
904
925
|
let readiness;
|
|
905
926
|
let lastReadiness;
|
|
927
|
+
let markedReadyForReview = false;
|
|
906
928
|
for (let i = 0; i < maxPolls; i++) {
|
|
907
929
|
readiness = await collect(ownerRepo, branch, input.base, gh, input.issueRef, input.issueAction);
|
|
930
|
+
if (readiness.draft === true
|
|
931
|
+
&& readiness.readinessVerdict !== 'merged'
|
|
932
|
+
&& readiness.readinessVerdict !== 'closed'
|
|
933
|
+
&& ciFailuresFrom(readiness).length === 0) {
|
|
934
|
+
const readyFailure = markPrReadyForReview({
|
|
935
|
+
gh,
|
|
936
|
+
branch,
|
|
937
|
+
ownerRepo,
|
|
938
|
+
prNumber: readiness.pr.number,
|
|
939
|
+
...(input.githubAccount ? { githubAccount: input.githubAccount } : {}),
|
|
940
|
+
});
|
|
941
|
+
if (readyFailure)
|
|
942
|
+
return readyFailure;
|
|
943
|
+
markedReadyForReview = true;
|
|
944
|
+
readiness = await collect(ownerRepo, branch, input.base, gh, input.issueRef, input.issueAction);
|
|
945
|
+
}
|
|
908
946
|
lastReadiness = readiness;
|
|
909
947
|
if (readiness.checks.pending.length === 0)
|
|
910
948
|
break;
|
|
@@ -973,10 +1011,16 @@ export async function pollPr(input, deps) {
|
|
|
973
1011
|
}
|
|
974
1012
|
const initialCiFailures = ciFailuresFrom(settled);
|
|
975
1013
|
if (initialCiFailures.length === 0) {
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
1014
|
+
if (!markedReadyForReview) {
|
|
1015
|
+
const readyFailure = markPrReadyForReview({
|
|
1016
|
+
gh,
|
|
1017
|
+
branch,
|
|
1018
|
+
ownerRepo,
|
|
1019
|
+
prNumber: settled.pr.number,
|
|
1020
|
+
...(input.githubAccount ? { githubAccount: input.githubAccount } : {}),
|
|
1021
|
+
});
|
|
1022
|
+
if (readyFailure)
|
|
1023
|
+
return readyFailure;
|
|
980
1024
|
}
|
|
981
1025
|
const reviewGracePolls = deps.reviewGracePolls ?? envInt('REVO_POLL_PR_REVIEW_GRACE_POLLS', 4);
|
|
982
1026
|
for (let i = 0; i < reviewGracePolls && settled.reviewThreads.items.length === 0; i++) {
|
|
@@ -1133,27 +1177,21 @@ let IntegratorService = class IntegratorService {
|
|
|
1133
1177
|
};
|
|
1134
1178
|
}
|
|
1135
1179
|
runIntegrate = (input) => {
|
|
1136
|
-
const pinned = resolvePinnedGh();
|
|
1180
|
+
const pinned = resolvePinnedGh({ account: input.githubAccount });
|
|
1137
1181
|
if ('needsHuman' in pinned) {
|
|
1138
1182
|
console.warn(`[integrator] ${pinned.lesson}`);
|
|
1139
1183
|
return Promise.resolve(pinned);
|
|
1140
1184
|
}
|
|
1141
|
-
console.log(`[integrator] gh pinned to account '${
|
|
1142
|
-
return integrate(input, { ...this.deps, execGh: pinned.execGh });
|
|
1143
|
-
};
|
|
1144
|
-
runStub = (input) => {
|
|
1145
|
-
return stubIntegrate(input);
|
|
1185
|
+
console.log(`[integrator] gh pinned to account '${pinned.account}' (GH_TOKEN, not ambient)`);
|
|
1186
|
+
return integrate({ ...input, githubAccount: pinned.account }, { ...this.deps, execGh: pinned.execGh });
|
|
1146
1187
|
};
|
|
1147
1188
|
runConfirmMerge = (input) => {
|
|
1148
|
-
const pinned = resolvePinnedGh();
|
|
1189
|
+
const pinned = resolvePinnedGh({ account: input.githubAccount });
|
|
1149
1190
|
if ('needsHuman' in pinned) {
|
|
1150
1191
|
console.warn(`[confirm-merge] ${pinned.lesson}`);
|
|
1151
1192
|
return Promise.resolve(pinned);
|
|
1152
1193
|
}
|
|
1153
|
-
return confirmMerge(input, { ...this.deps, execGh: pinned.execGh });
|
|
1154
|
-
};
|
|
1155
|
-
runConfirmStub = (input) => {
|
|
1156
|
-
return { merged: true, prNumber: 0, prUrl: `stub://pr/${input.taskId}/merged` };
|
|
1194
|
+
return confirmMerge({ ...input, githubAccount: pinned.account }, { ...this.deps, execGh: pinned.execGh });
|
|
1157
1195
|
};
|
|
1158
1196
|
runPreflight = (taskId, base) => {
|
|
1159
1197
|
return preflightLive(taskId, base, this.deps);
|
|
@@ -1162,65 +1200,29 @@ let IntegratorService = class IntegratorService {
|
|
|
1162
1200
|
return captureProducedChange(input, this.deps);
|
|
1163
1201
|
};
|
|
1164
1202
|
runPollPr = (input) => {
|
|
1165
|
-
const pinned = resolvePinnedGh();
|
|
1203
|
+
const pinned = resolvePinnedGh({ account: input.githubAccount });
|
|
1166
1204
|
if ('needsHuman' in pinned) {
|
|
1167
1205
|
console.warn(`[poll-pr] ${pinned.lesson}`);
|
|
1168
1206
|
return Promise.resolve(pinned);
|
|
1169
1207
|
}
|
|
1170
|
-
return pollPr(input, { ...this.deps, execGh: pinned.execGh });
|
|
1171
|
-
};
|
|
1172
|
-
runPollStub = (_input) => {
|
|
1173
|
-
return { prNumber: null, headSha: 'stub', evidence: ['stub pollPr readiness: clean'], verdict: 'clean', ciFailures: [], reviewThreads: [] };
|
|
1208
|
+
return pollPr({ ...input, githubAccount: pinned.account }, { ...this.deps, execGh: pinned.execGh });
|
|
1174
1209
|
};
|
|
1175
1210
|
runOverrideMerge = (input) => {
|
|
1176
|
-
const pinned = resolvePinnedGh();
|
|
1211
|
+
const pinned = resolvePinnedGh({ account: input.githubAccount });
|
|
1177
1212
|
if ('needsHuman' in pinned) {
|
|
1178
1213
|
console.warn(`[override-merge] ${pinned.lesson}`);
|
|
1179
1214
|
return Promise.resolve(pinned);
|
|
1180
1215
|
}
|
|
1181
|
-
return overrideMerge(input, { ...this.deps, execGh: pinned.execGh });
|
|
1182
|
-
};
|
|
1183
|
-
runOverrideStub = (input) => {
|
|
1184
|
-
const gate = mergeOverrideGate(input);
|
|
1185
|
-
if ('needsHuman' in gate) {
|
|
1186
|
-
return {
|
|
1187
|
-
prNumber: null,
|
|
1188
|
-
headSha: 'stub',
|
|
1189
|
-
evidence: [gate.lesson, 'overrideMerge verdict=recheck'],
|
|
1190
|
-
verdict: 'recheck',
|
|
1191
|
-
ciFailures: [],
|
|
1192
|
-
reviewThreads: [],
|
|
1193
|
-
override: {
|
|
1194
|
-
accepted: false,
|
|
1195
|
-
actor: 'stub',
|
|
1196
|
-
note: '',
|
|
1197
|
-
source: { gate: 'mergeGate', inboxId: '' },
|
|
1198
|
-
facts: [{ severity: 'hard', kind: 'override_input_missing', summary: gate.lesson }],
|
|
1199
|
-
replied: 0,
|
|
1200
|
-
resolved: 0,
|
|
1201
|
-
reason: gate.lesson,
|
|
1202
|
-
},
|
|
1203
|
-
};
|
|
1204
|
-
}
|
|
1205
|
-
return mergeOverrideOutput({
|
|
1206
|
-
gate,
|
|
1207
|
-
verdict: 'clean',
|
|
1208
|
-
facts: [],
|
|
1209
|
-
accepted: true,
|
|
1210
|
-
fallbackHeadSha: gate.audit.headSha || 'stub',
|
|
1211
|
-
});
|
|
1216
|
+
return overrideMerge({ ...input, githubAccount: pinned.account }, { ...this.deps, execGh: pinned.execGh });
|
|
1212
1217
|
};
|
|
1213
1218
|
runRespondThreads = (input) => {
|
|
1214
|
-
const pinned = resolvePinnedGh();
|
|
1219
|
+
const pinned = resolvePinnedGh({ account: input.githubAccount });
|
|
1215
1220
|
if ('needsHuman' in pinned) {
|
|
1216
1221
|
console.warn(`[respond-threads] ${pinned.lesson}`);
|
|
1217
1222
|
return Promise.resolve(pinned);
|
|
1218
1223
|
}
|
|
1219
1224
|
return respondThreads(triageForRespondThreads(input), { execGh: pinned.execGh });
|
|
1220
1225
|
};
|
|
1221
|
-
runRespondStub = (_input) => {
|
|
1222
|
-
return { replied: 0, resolved: 0 };
|
|
1223
|
-
};
|
|
1224
1226
|
};
|
|
1225
1227
|
IntegratorService = __decorate([
|
|
1226
1228
|
Injectable(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integrator.js","sourceRoot":"","sources":["../../src/runners/integrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"integrator.js","sourceRoot":"","sources":["../../src/runners/integrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -75,7 +75,8 @@ async function startEmbeddedPostgres(pgPort, dataDir) {
|
|
|
75
75
|
}
|
|
76
76
|
async function ensureStorageUncached() {
|
|
77
77
|
const config = getConfig();
|
|
78
|
-
const
|
|
78
|
+
const explicitPgPort = Number.isInteger(Number.parseInt(process.env['REVO_PG_PORT'] ?? '', 10));
|
|
79
|
+
const pgPort = explicitPgPort || (await canConnect(config.preferredPgPort))
|
|
79
80
|
? config.preferredPgPort
|
|
80
81
|
: await findFreePort(config.preferredPgPort);
|
|
81
82
|
await startEmbeddedPostgres(pgPort, config.dataDir);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensure-storage.js","sourceRoot":"","sources":["../../src/storage/ensure-storage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ensure-storage.js","sourceRoot":"","sources":["../../src/storage/ensure-storage.ts"],"names":[],"mappings":"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"}
|