audit-tools 0.32.68 → 0.33.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.
- package/dist/audit/cli/advanceAuditCommand.d.ts.map +1 -1
- package/dist/audit/cli/advanceAuditCommand.js +8 -3
- package/dist/audit/cli/advanceAuditCommand.js.map +1 -1
- package/dist/audit/cli/args.d.ts +9 -27
- package/dist/audit/cli/args.d.ts.map +1 -1
- package/dist/audit/cli/args.js +116 -50
- package/dist/audit/cli/args.js.map +1 -1
- package/dist/audit/cli/auditStep.d.ts +15 -1
- package/dist/audit/cli/auditStep.d.ts.map +1 -1
- package/dist/audit/cli/auditStep.js +2 -0
- package/dist/audit/cli/auditStep.js.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.d.ts +2 -1
- package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.js +43 -77
- package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
- package/dist/audit/cli/dispatch.d.ts.map +1 -1
- package/dist/audit/cli/dispatch.js +14 -6
- package/dist/audit/cli/dispatch.js.map +1 -1
- package/dist/audit/cli/hybridDispatch.d.ts +3 -1
- package/dist/audit/cli/hybridDispatch.d.ts.map +1 -1
- package/dist/audit/cli/hybridDispatch.js +1 -0
- package/dist/audit/cli/hybridDispatch.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts +0 -9
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +151 -92
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts +11 -2
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +56 -8
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/prepareDispatchCommand.d.ts.map +1 -1
- package/dist/audit/cli/prepareDispatchCommand.js +15 -9
- package/dist/audit/cli/prepareDispatchCommand.js.map +1 -1
- package/dist/audit/cli/prompts.d.ts +12 -32
- package/dist/audit/cli/prompts.d.ts.map +1 -1
- package/dist/audit/cli/prompts.js +19 -33
- package/dist/audit/cli/prompts.js.map +1 -1
- package/dist/audit/cli/providerConfirmationStep.d.ts +13 -5
- package/dist/audit/cli/providerConfirmationStep.d.ts.map +1 -1
- package/dist/audit/cli/providerConfirmationStep.js +47 -8
- package/dist/audit/cli/providerConfirmationStep.js.map +1 -1
- package/dist/audit/cli/quotaCommand.d.ts.map +1 -1
- package/dist/audit/cli/quotaCommand.js +16 -10
- package/dist/audit/cli/quotaCommand.js.map +1 -1
- package/dist/audit/cli/semanticReviewStep.d.ts +11 -1
- package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
- package/dist/audit/cli/semanticReviewStep.js +11 -15
- package/dist/audit/cli/semanticReviewStep.js.map +1 -1
- package/dist/audit/cli/validateCommand.d.ts.map +1 -1
- package/dist/audit/cli/validateCommand.js +3 -3
- package/dist/audit/cli/validateCommand.js.map +1 -1
- package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
- package/dist/audit/orchestrator/advance.d.ts.map +1 -1
- package/dist/audit/orchestrator/advance.js +39 -7
- package/dist/audit/orchestrator/advance.js.map +1 -1
- package/dist/audit/orchestrator/advanceTypes.d.ts +52 -1
- package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.js +9 -1
- package/dist/audit/orchestrator/executorRunners.js.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.d.ts +27 -3
- package/dist/audit/orchestrator/intakeExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.js +119 -19
- package/dist/audit/orchestrator/intakeExecutors.js.map +1 -1
- package/dist/audit/orchestrator/nextStep.d.ts +7 -0
- package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
- package/dist/audit/orchestrator/nextStep.js +3 -0
- package/dist/audit/orchestrator/nextStep.js.map +1 -1
- package/dist/audit/orchestrator/providerConfirmation.d.ts.map +1 -1
- package/dist/audit/orchestrator/providerConfirmation.js +0 -2
- package/dist/audit/orchestrator/providerConfirmation.js.map +1 -1
- package/dist/audit/orchestrator/state.d.ts +17 -0
- package/dist/audit/orchestrator/state.d.ts.map +1 -1
- package/dist/audit/orchestrator/state.js +13 -1
- package/dist/audit/orchestrator/state.js.map +1 -1
- package/dist/audit/quota/index.d.ts +128 -128
- package/dist/audit/supervisor/sessionConfig.d.ts +3 -11
- package/dist/audit/supervisor/sessionConfig.d.ts.map +1 -1
- package/dist/audit/supervisor/sessionConfig.js +3 -25
- package/dist/audit/supervisor/sessionConfig.js.map +1 -1
- package/dist/audit/types/analyzerCapability.d.ts +6 -6
- package/dist/audit/types/externalAnalyzer.d.ts +10 -10
- package/dist/remediate/phases/plan.d.ts.map +1 -1
- package/dist/remediate/phases/plan.js +5 -4
- package/dist/remediate/phases/plan.js.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +9 -3
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/dispatch/marshal.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/marshal.js +5 -4
- package/dist/remediate/steps/dispatch/marshal.js.map +1 -1
- package/dist/remediate/steps/dispatch/waveScheduling.d.ts +4 -2
- package/dist/remediate/steps/dispatch/waveScheduling.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/waveScheduling.js +33 -85
- package/dist/remediate/steps/dispatch/waveScheduling.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +0 -10
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +25 -24
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/sessionConfigLoad.d.ts +46 -0
- package/dist/remediate/steps/sessionConfigLoad.d.ts.map +1 -0
- package/dist/remediate/steps/sessionConfigLoad.js +32 -0
- package/dist/remediate/steps/sessionConfigLoad.js.map +1 -0
- package/dist/shared/config/resolveSessionConfig.d.ts +72 -0
- package/dist/shared/config/resolveSessionConfig.d.ts.map +1 -0
- package/dist/shared/config/resolveSessionConfig.js +105 -0
- package/dist/shared/config/resolveSessionConfig.js.map +1 -0
- package/dist/shared/dispatch/admissionLoop.d.ts +12 -12
- package/dist/shared/friction/stepBoundaryCapture.d.ts +22 -1
- package/dist/shared/friction/stepBoundaryCapture.d.ts.map +1 -1
- package/dist/shared/friction/stepBoundaryCapture.js +40 -0
- package/dist/shared/friction/stepBoundaryCapture.js.map +1 -1
- package/dist/shared/index.d.ts +14 -8
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +11 -5
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/providers/auditorSources.d.ts +102 -0
- package/dist/shared/providers/auditorSources.d.ts.map +1 -0
- package/dist/shared/providers/auditorSources.js +226 -0
- package/dist/shared/providers/auditorSources.js.map +1 -0
- package/dist/shared/providers/providerConfirmation.d.ts +3 -20
- package/dist/shared/providers/providerConfirmation.d.ts.map +1 -1
- package/dist/shared/providers/providerConfirmation.js +3 -37
- package/dist/shared/providers/providerConfirmation.js.map +1 -1
- package/dist/shared/providers/providerFactory.d.ts +6 -0
- package/dist/shared/providers/providerFactory.d.ts.map +1 -1
- package/dist/shared/providers/providerFactory.js +6 -0
- package/dist/shared/providers/providerFactory.js.map +1 -1
- package/dist/shared/providers/sharedProviderConfirmation.d.ts +264 -75
- package/dist/shared/providers/sharedProviderConfirmation.d.ts.map +1 -1
- package/dist/shared/providers/sharedProviderConfirmation.js +534 -113
- package/dist/shared/providers/sharedProviderConfirmation.js.map +1 -1
- package/dist/shared/quota/apiPool.d.ts +34 -11
- package/dist/shared/quota/apiPool.d.ts.map +1 -1
- package/dist/shared/quota/apiPool.js +21 -23
- package/dist/shared/quota/apiPool.js.map +1 -1
- package/dist/shared/quota/capacity.d.ts +50 -50
- package/dist/shared/quota/hostPool.d.ts +107 -0
- package/dist/shared/quota/hostPool.d.ts.map +1 -0
- package/dist/shared/quota/hostPool.js +103 -0
- package/dist/shared/quota/hostPool.js.map +1 -0
- package/dist/shared/quota/quotaSource.d.ts +2 -2
- package/dist/shared/types/auditorDescriptor.d.ts +112 -0
- package/dist/shared/types/auditorDescriptor.d.ts.map +1 -0
- package/dist/shared/types/auditorDescriptor.js +28 -0
- package/dist/shared/types/auditorDescriptor.js.map +1 -0
- package/dist/shared/types/providerConfirmation.d.ts +64 -6
- package/dist/shared/types/providerConfirmation.d.ts.map +1 -1
- package/dist/shared/types/providerConfirmation.js +1 -1
- package/dist/shared/types/sessionConfig.d.ts +73 -65
- package/dist/shared/types/sessionConfig.d.ts.map +1 -1
- package/dist/shared/types/sessionConfig.js +48 -0
- package/dist/shared/types/sessionConfig.js.map +1 -1
- package/dist/shared/validation/sessionConfig.d.ts +26 -14
- package/dist/shared/validation/sessionConfig.d.ts.map +1 -1
- package/dist/shared/validation/sessionConfig.js +72 -70
- package/dist/shared/validation/sessionConfig.js.map +1 -1
- package/docs/audit-pkg/contracts.md +4 -4
- package/docs/audit-pkg/operator-guide.md +43 -24
- package/package.json +1 -1
- package/skills/audit-code/SKILL.md +17 -14
- package/skills/audit-code/audit-code.prompt.md +17 -16
- package/wrapper/audit-code-wrapper-install-hosts.mjs +6 -10
- package/wrapper/remediate-code-wrapper-install-hosts.mjs +4 -8
- package/dist/shared/quota/repairProxyRegistry.d.ts +0 -84
- package/dist/shared/quota/repairProxyRegistry.d.ts.map +0 -1
- package/dist/shared/quota/repairProxyRegistry.js +0 -144
- package/dist/shared/quota/repairProxyRegistry.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { computeDispatchAdmission, createReservationLedger, admissionPoolsFromSummaries } from "audit-tools/shared";
|
|
2
|
-
import {
|
|
2
|
+
import { buildHostPoolPreamble, buildSourcePools, resolveHostProviderName, resolveConversationHostProvider, isDemotableInProcessProvider, } from "audit-tools/shared";
|
|
3
3
|
import { REMEDIATION_DISPATCH_QUOTA_CONTRACT_VERSION, } from "../types.js";
|
|
4
|
-
import { computeDispatchCapacity, resolveHostActiveSubagentLimit,
|
|
4
|
+
import { computeDispatchCapacity, resolveHostActiveSubagentLimit, computeBackoffCooldownMs, summarizeDispatchCapacityPools, } from "../../quota/index.js";
|
|
5
5
|
export { resolveHostActiveSubagentLimit };
|
|
6
6
|
export { detectHostActiveSubagentLimit as detectHostConcurrencyFromEnv, } from "../../quota/hostLimits.js";
|
|
7
7
|
export function normalizeSlotTokens(tokens, count) {
|
|
@@ -21,98 +21,45 @@ export function resolveHostConcurrencyLimit(options) {
|
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
24
|
+
* Remediate's draw over the SHARED host-pool assembly core
|
|
25
|
+
* ({@link buildHostPoolPreamble} in `audit-tools/shared`): resolve this mode's provider
|
|
26
|
+
* identity, then let the shared core do the eight-step assembly. The local copy of that
|
|
27
|
+
* preamble is GONE — it and audit's `buildDispatchPool` preamble were the same steps in
|
|
28
|
+
* the same order (including a byte-identical quota-key derivation), which is a fork, not
|
|
29
|
+
* a domain-forced divergence ([[dissolve-auditor-remediator-distinction]]).
|
|
30
|
+
*
|
|
31
|
+
* Per-mode here: the provider default, and the `REMEDIATE_CODE` env namespace (matching
|
|
32
|
+
* `quota/hostLimits.ts`, which already parameterizes exactly this axis).
|
|
27
33
|
*/
|
|
28
|
-
function
|
|
29
|
-
return [...roster].sort((a, b) => compareTier(b.rank, a.rank));
|
|
30
|
-
}
|
|
31
|
-
async function buildHostPoolPreamble(input) {
|
|
34
|
+
async function buildRemediateHostPools(input) {
|
|
32
35
|
const sessionConfig = input.sessionConfig ?? {};
|
|
33
36
|
const providerName = input.providerName ??
|
|
34
37
|
sessionConfig.provider ??
|
|
35
38
|
"claude-code";
|
|
36
|
-
const
|
|
37
|
-
sessionConfig.block_quota
|
|
38
|
-
?.host_model ??
|
|
39
|
-
null;
|
|
40
|
-
// Quota-key identity: resolved model name, else the host's opaque id, else
|
|
41
|
-
// null → `provider/*`. Per-roster-rank `model_id` overrides per pool below.
|
|
42
|
-
const quotaModelKeySegment = hostModel ?? input.hostModelId ?? null;
|
|
43
|
-
const roster = input.hostModels?.length
|
|
44
|
-
? sortRosterMostCapableFirst(input.hostModels)
|
|
45
|
-
: null;
|
|
46
|
-
const hostLimit = resolveHostConcurrencyLimit({
|
|
47
|
-
hostMaxConcurrent: input.hostMaxConcurrent,
|
|
39
|
+
const preamble = await buildHostPoolPreamble({
|
|
48
40
|
sessionConfig,
|
|
49
|
-
env: input.env,
|
|
50
|
-
});
|
|
51
|
-
// The capability handshake: the host reported its dispatch model's real
|
|
52
|
-
// context/output window this session (the roster's most capable entry under
|
|
53
|
-
// the multi-rank handshake). Carried into the pool's discoveredLimits so the
|
|
54
|
-
// shared discovered_capability rung sizes the budget to the real window
|
|
55
|
-
// instead of the conservative 32k floor. RPM/TPM stay null and fill from the
|
|
56
|
-
// learned quota state.
|
|
57
|
-
const hostContextTokens = input.hostContextTokens ?? roster?.[0]?.context_tokens ?? null;
|
|
58
|
-
const hostOutputTokens = input.hostOutputTokens ?? roster?.[0]?.output_tokens ?? null;
|
|
59
|
-
const hostCapabilityLimits = hostContextTokens != null || hostOutputTokens != null
|
|
60
|
-
? { context_tokens: hostContextTokens, output_tokens: hostOutputTokens }
|
|
61
|
-
: null;
|
|
62
|
-
const quotaEntries = (await readQuotaStateOrDegrade("waveScheduler")).entries;
|
|
63
|
-
// The proactive quota snapshot (Claude OAuth source, then learned) so the
|
|
64
|
-
// scheduler can throttle/cooldown from live remaining quota — mirrors
|
|
65
|
-
// audit-code's buildDispatchPool. PREPEND the host-session source keyed on
|
|
66
|
-
// this host pool's own (provider, model) key — first-class PRE-WALL source
|
|
67
|
-
// (graduated remaining_pct → LOW/CRITICAL throttle before a 429), gating on the
|
|
68
|
-
// exact key so it never masks the proactive/learned sources.
|
|
69
|
-
const quotaSource = buildQuotaSource({
|
|
70
|
-
hostSession: input.hostSession ??
|
|
71
|
-
new HostSessionQuotaSource({
|
|
72
|
-
providerModelKey: buildProviderModelKey(providerName, quotaModelKeySegment),
|
|
73
|
-
}),
|
|
74
|
-
});
|
|
75
|
-
// One capacity pool per reported roster rank (most capable first), each with
|
|
76
|
-
// its own discovered window and quota key; a single pool for the scalar/absent
|
|
77
|
-
// handshake. Built via the shared host-pool-from-roster core so the pool shape
|
|
78
|
-
// + account-keyed pool ids can't drift across the two consumers.
|
|
79
|
-
const primaryPools = await buildHostModelPools({
|
|
80
41
|
providerName,
|
|
81
|
-
hostModel,
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}),
|
|
42
|
+
explicitHostModel: input.hostModel,
|
|
43
|
+
hostModelId: input.hostModelId,
|
|
44
|
+
envPrefix: "REMEDIATE_CODE",
|
|
45
|
+
quotaStateLabel: "waveScheduler",
|
|
46
|
+
hostActiveSubagentLimit: input.hostMaxConcurrent,
|
|
47
|
+
hostContextTokens: input.hostContextTokens,
|
|
48
|
+
hostOutputTokens: input.hostOutputTokens,
|
|
49
|
+
roster: input.hostModels,
|
|
50
|
+
...(input.env ? { env: input.env } : {}),
|
|
51
|
+
...(input.hostSession ? { hostSession: input.hostSession } : {}),
|
|
92
52
|
});
|
|
93
|
-
return {
|
|
94
|
-
sessionConfig,
|
|
95
|
-
providerName,
|
|
96
|
-
hostModel,
|
|
97
|
-
quotaModelKeySegment,
|
|
98
|
-
roster,
|
|
99
|
-
hostLimit,
|
|
100
|
-
hostContextTokens,
|
|
101
|
-
hostOutputTokens,
|
|
102
|
-
hostCapabilityLimits,
|
|
103
|
-
quotaEntries,
|
|
104
|
-
quotaSource,
|
|
105
|
-
primaryPools,
|
|
106
|
-
};
|
|
53
|
+
return { ...preamble, sessionConfig };
|
|
107
54
|
}
|
|
108
55
|
export async function scheduleWave(input) {
|
|
109
56
|
const sessionConfig = input.sessionConfig ?? {};
|
|
110
|
-
// ONE scheduling track: always build the host
|
|
57
|
+
// ONE scheduling track: always build the host pools and let the shared
|
|
111
58
|
// capacity/admission compute concurrency from live quota + real signals. There
|
|
112
59
|
// is no naive/quota-off branch — quota self-monitoring is not switchable. When
|
|
113
60
|
// the quota source is blind (no live snapshot) the wave stays governed by real
|
|
114
61
|
// signals only and is surfaced loudly at the dispatch site (marshal.ts).
|
|
115
|
-
const preamble = await
|
|
62
|
+
const preamble = await buildRemediateHostPools({
|
|
116
63
|
sessionConfig: input.sessionConfig,
|
|
117
64
|
providerName: input.providerName,
|
|
118
65
|
hostModel: input.hostModel,
|
|
@@ -124,7 +71,7 @@ export async function scheduleWave(input) {
|
|
|
124
71
|
env: input.env,
|
|
125
72
|
});
|
|
126
73
|
const capacity = computeDispatchCapacity({
|
|
127
|
-
pools: preamble.
|
|
74
|
+
pools: preamble.pools,
|
|
128
75
|
sessionConfig,
|
|
129
76
|
pendingItemTokens: normalizeSlotTokens(input.estimatedSlotTokens, input.itemCount),
|
|
130
77
|
});
|
|
@@ -155,9 +102,9 @@ export async function buildConfirmedPools(input) {
|
|
|
155
102
|
const hostProviderName = demoteHostIdentity
|
|
156
103
|
? resolveConversationHostProvider({ sessionConfig: input.sessionConfig })
|
|
157
104
|
: actualProviderName;
|
|
158
|
-
// Resolve identity/limits and build the per-rank host-model pools via the
|
|
159
|
-
//
|
|
160
|
-
const { sessionConfig, quotaSource, quotaEntries, primaryPools } = await
|
|
105
|
+
// Resolve identity/limits and build the per-rank host-model pools via the SAME
|
|
106
|
+
// shared assembly core `scheduleWave` uses — and that audit uses.
|
|
107
|
+
const { sessionConfig, quotaSource, quotaEntries, pools: primaryPools } = await buildRemediateHostPools({
|
|
161
108
|
sessionConfig: input.sessionConfig,
|
|
162
109
|
providerName: hostProviderName,
|
|
163
110
|
hostMaxConcurrent: input.hostMaxConcurrent,
|
|
@@ -165,8 +112,8 @@ export async function buildConfirmedPools(input) {
|
|
|
165
112
|
hostOutputTokens: input.hostOutputTokens,
|
|
166
113
|
hostModels: input.hostModels,
|
|
167
114
|
hostModelId: input.hostModelId,
|
|
168
|
-
env: input.env,
|
|
169
|
-
hostSession: input.hostSession,
|
|
115
|
+
...(input.env ? { env: input.env } : {}),
|
|
116
|
+
...(input.hostSession ? { hostSession: input.hostSession } : {}),
|
|
170
117
|
});
|
|
171
118
|
// Every configured dispatchable backend source (any non-IDE source: NIM/vLLM API,
|
|
172
119
|
// a CLI pool, …) becomes a CapacityPool alongside the primary, so the scheduler's
|
|
@@ -181,6 +128,7 @@ export async function buildConfirmedPools(input) {
|
|
|
181
128
|
quotaSource,
|
|
182
129
|
quotaEntries,
|
|
183
130
|
demotePrimaryInProcess: input.demotePrimaryInProcess,
|
|
131
|
+
excludedBackends: input.excludedBackends,
|
|
184
132
|
});
|
|
185
133
|
primaryPools.push(...sourcePools);
|
|
186
134
|
return primaryPools;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waveScheduling.js","sourceRoot":"","sources":["../../../../src/remediate/steps/dispatch/waveScheduling.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"waveScheduling.js","sourceRoot":"","sources":["../../../../src/remediate/steps/dispatch/waveScheduling.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,16 +63,6 @@ export declare function resolveHostDispatchCapability(options: {
|
|
|
63
63
|
sessionConfig?: SessionConfig | null;
|
|
64
64
|
env?: NodeJS.ProcessEnv;
|
|
65
65
|
}): boolean;
|
|
66
|
-
/**
|
|
67
|
-
* Whether the run is unattended (autonomous). Host-agnostic — ONE flag drives
|
|
68
|
-
* the whole path. Resolution order: sessionConfig.autonomous_mode →
|
|
69
|
-
* REMEDIATE_AUTONOMOUS env → false (attended/interactive default, so the review
|
|
70
|
-
* gate halts for a human unless autonomy is explicitly requested).
|
|
71
|
-
*/
|
|
72
|
-
export declare function resolveAutonomousMode(options?: {
|
|
73
|
-
sessionConfig?: SessionConfig | null;
|
|
74
|
-
env?: NodeJS.ProcessEnv;
|
|
75
|
-
}): boolean;
|
|
76
66
|
/**
|
|
77
67
|
* Whether the rolling dispatch engine drives the implement phase. Defaults to TRUE:
|
|
78
68
|
* both rolling drivers on the shared `acceptNodeWorktree` core (per-node worktree →
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nextStep.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/nextStep.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nextStep.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/nextStep.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { loadRemediateSessionConfig } from "./sessionConfigLoad.js";
|
|
1
2
|
import { existsSync, statSync } from "node:fs";
|
|
2
3
|
import { mkdir, readFile, rename } from "node:fs/promises";
|
|
3
4
|
import { dirname, join, resolve } from "node:path";
|
|
4
5
|
import { StateStore } from "../state/store.js";
|
|
5
|
-
import { readOptionalJsonFile,
|
|
6
|
+
import { readConfirmedDispatchPolicy, resolveDispatchExclusion, readOptionalJsonFile, readValidatedRepoSessionIntent, stagedAndUntracked, writeJsonFile, writeTextFile, buildAuditDeliverablePair, formatValidationIssues, isRecord, withFsRetry, RunLogger, DISPATCH_PROMPT_HANDOFF_NOTE, renderHostScratchNote, hostScratchDir, renderQuotaCoverageNudge, renderTokenBudgetView, coerceJsonObjectArg, driveRolling, resolveLedgerBudgets, setQuotaStateDir, detectHostDispatchWall, admissionBlockedOnBudget, reconcileAdmissionLeasesFromQuotaFile, buildQuotaPausedTerminal, interpretFreeFormIntent, advance, decideFrictionTriage, buildFrictionTriageBlock, planHybridDispatch, readSettledPools, addSettledPool, sourceByPoolId, classifyProvider, selectDispatchDriver, renderDispatchDriverInstruction, HostSessionQuotaSource, buildProviderModelKey, captureStepBoundaryFriction, captureCostDriftFriction, captureCreditExhaustionFriction, captureQuotaUnclassifiedFriction, LENSES, SEVERITIES, resolveHostProviderName, resolveConversationHostProvider, resolveHostDispatchCapability as sharedResolveHostDispatchCapability, resolveAutonomousMode, resolveRollingEngineFlag, shouldDemotePrimaryInProcess, DEFAULT_CONTEXT_TOKENS } from "audit-tools/shared";
|
|
6
7
|
import { readRemediationAccessMemory, computeBlockContinuityScores } from "../state/accessMemory.js";
|
|
7
8
|
import { applyPlanPipeline, buildCoverageLedger } from "../phases/plan.js";
|
|
8
9
|
import { groundExtractedFindings } from "../phases/grounding.js";
|
|
@@ -51,23 +52,6 @@ export function resolveHostDispatchCapability(options) {
|
|
|
51
52
|
env: options.env,
|
|
52
53
|
});
|
|
53
54
|
}
|
|
54
|
-
/**
|
|
55
|
-
* Whether the run is unattended (autonomous). Host-agnostic — ONE flag drives
|
|
56
|
-
* the whole path. Resolution order: sessionConfig.autonomous_mode →
|
|
57
|
-
* REMEDIATE_AUTONOMOUS env → false (attended/interactive default, so the review
|
|
58
|
-
* gate halts for a human unless autonomy is explicitly requested).
|
|
59
|
-
*/
|
|
60
|
-
export function resolveAutonomousMode(options = {}) {
|
|
61
|
-
if (options.sessionConfig?.autonomous_mode !== undefined) {
|
|
62
|
-
return options.sessionConfig.autonomous_mode;
|
|
63
|
-
}
|
|
64
|
-
const envValue = (options.env ?? process.env).REMEDIATE_AUTONOMOUS;
|
|
65
|
-
if (envValue === "true")
|
|
66
|
-
return true;
|
|
67
|
-
if (envValue === "false")
|
|
68
|
-
return false;
|
|
69
|
-
return false;
|
|
70
|
-
}
|
|
71
55
|
/**
|
|
72
56
|
* Whether the rolling dispatch engine drives the implement phase. Defaults to TRUE:
|
|
73
57
|
* both rolling drivers on the shared `acceptNodeWorktree` core (per-node worktree →
|
|
@@ -687,6 +671,11 @@ export async function driveRollingImplementDispatch(options) {
|
|
|
687
671
|
hostModels: options.waveOptions?.hostModels,
|
|
688
672
|
hostModelId: options.waveOptions?.hostModelId,
|
|
689
673
|
hostSession,
|
|
674
|
+
// The operator's Gate-0 exclusions, applied as a set-difference over freshly
|
|
675
|
+
// gathered reach. Read here because this layer owns `root`; self-spawn-blocked is
|
|
676
|
+
// recomputed against THIS process's env rather than inherited from the auditor
|
|
677
|
+
// that wrote the confirmation.
|
|
678
|
+
excludedBackends: resolveDispatchExclusion(await readConfirmedDispatchPolicy(options.root)),
|
|
690
679
|
});
|
|
691
680
|
// The live per-node worker: the configured provider, launched with the node's
|
|
692
681
|
// worktree-rooted prompt and cwd = its worktree. Tests inject `options.dispatchNode`
|
|
@@ -1175,8 +1164,13 @@ async function presentReportStep(root, artifactsDir, state) {
|
|
|
1175
1164
|
}
|
|
1176
1165
|
async function buildImplementDispatchStep(ctx) {
|
|
1177
1166
|
const { root, artifactsDir, state, options, store } = ctx;
|
|
1178
|
-
|
|
1179
|
-
|
|
1167
|
+
// The effective config comes from the single remediate loader — always resolved
|
|
1168
|
+
// against the ambient descriptor (see there for why `null` is not an option).
|
|
1169
|
+
const loadedSessionConfig = await loadRemediateSessionConfig({
|
|
1170
|
+
root,
|
|
1171
|
+
override: options.sessionConfig,
|
|
1172
|
+
artifactsFirst: true,
|
|
1173
|
+
});
|
|
1180
1174
|
// B1: fold the `--host-provider` override onto `host_provider` so every
|
|
1181
1175
|
// downstream host resolver keys the fan-out to the ACTUAL conversation host.
|
|
1182
1176
|
// "auto" is treated as unset (fall through to env auto-detection).
|
|
@@ -1326,6 +1320,9 @@ async function buildImplementDispatchStep(ctx) {
|
|
|
1326
1320
|
// skipped (attended host) — demote the configured primary backend into the
|
|
1327
1321
|
// source-pool set so the split fans across host + backend + NIM.
|
|
1328
1322
|
demotePrimaryInProcess: demoteBackendToSource,
|
|
1323
|
+
// The operator's Gate-0 exclusions, applied as a set-difference over freshly
|
|
1324
|
+
// gathered reach; self-spawn-blocked recomputed against THIS process's env.
|
|
1325
|
+
excludedBackends: resolveDispatchExclusion(await readConfirmedDispatchPolicy(root)),
|
|
1329
1326
|
});
|
|
1330
1327
|
const backendPools = confirmedPools.filter(isInProcessPool);
|
|
1331
1328
|
let rolling;
|
|
@@ -2347,9 +2344,11 @@ async function handleReadyIntakeContractPipeline(root, artifactsDir, options) {
|
|
|
2347
2344
|
// flag. Threaded into the contract pipeline so the adversarial 'critique' /
|
|
2348
2345
|
// 'critic' prompts MANDATE an independent sub-agent reviewer when the host can
|
|
2349
2346
|
// dispatch one (fail-safe: mandate by default).
|
|
2350
|
-
const sessionConfigForDispatch =
|
|
2351
|
-
|
|
2352
|
-
|
|
2347
|
+
const sessionConfigForDispatch = await loadRemediateSessionConfig({
|
|
2348
|
+
root,
|
|
2349
|
+
override: options?.sessionConfig,
|
|
2350
|
+
artifactsFirst: true,
|
|
2351
|
+
});
|
|
2353
2352
|
const hostCanDispatchSubagents = resolveHostDispatchCapability({
|
|
2354
2353
|
hostCanDispatchSubagents: options?.hostCanDispatchSubagents,
|
|
2355
2354
|
sessionConfig: sessionConfigForDispatch,
|
|
@@ -3087,8 +3086,10 @@ export async function decideNextStep(options = {}) {
|
|
|
3087
3086
|
// validated load (with `.remediation-artifacts/` path precedence + operator
|
|
3088
3087
|
// warning surface) happens inside the loop, so suppress warnings here to avoid
|
|
3089
3088
|
// emitting the same warning twice per invocation. Errors still throw.
|
|
3089
|
+
// Only reads `observability.run_log` (an INTENT field), so the raw intent suffices —
|
|
3090
|
+
// no descriptor resolve needed here.
|
|
3090
3091
|
const sessionConfig = normalizedOptions.sessionConfig ??
|
|
3091
|
-
(await
|
|
3092
|
+
(await readValidatedRepoSessionIntent(join(root, "session-config.json"), {
|
|
3092
3093
|
onWarnings: () => { },
|
|
3093
3094
|
}));
|
|
3094
3095
|
const runLogger = new RunLogger(join(artifactsDir, "run.log.jsonl"), {
|