agentic-engineering-harness 0.8.1 → 0.8.2

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 (79) hide show
  1. package/README.md +8 -0
  2. package/dist/agents/config.js +7 -5
  3. package/dist/agents/config.js.map +1 -1
  4. package/dist/agents/outputContracts.d.ts +1 -1
  5. package/dist/agents/permissions.d.ts +3 -2
  6. package/dist/agents/permissions.js +4 -4
  7. package/dist/agents/permissions.js.map +1 -1
  8. package/dist/agents/routing.js +1 -1
  9. package/dist/agents/routing.js.map +1 -1
  10. package/dist/agents/types.d.ts +15 -0
  11. package/dist/audit/intent.d.ts +12 -1
  12. package/dist/audit/intent.js +44 -13
  13. package/dist/audit/intent.js.map +1 -1
  14. package/dist/audit/intentDecision.d.ts +67 -0
  15. package/dist/audit/intentDecision.js +100 -0
  16. package/dist/audit/intentDecision.js.map +1 -0
  17. package/dist/audit/run.d.ts +3 -0
  18. package/dist/audit/run.js +1 -2
  19. package/dist/audit/run.js.map +1 -1
  20. package/dist/context/gateway.js +73 -19
  21. package/dist/context/gateway.js.map +1 -1
  22. package/dist/context/preflight.d.ts +9 -2
  23. package/dist/context/preflight.js +30 -10
  24. package/dist/context/preflight.js.map +1 -1
  25. package/dist/context/transport.d.ts +33 -1
  26. package/dist/context/transport.js +127 -23
  27. package/dist/context/transport.js.map +1 -1
  28. package/dist/context/types.d.ts +4 -4
  29. package/dist/core/run.js +0 -2
  30. package/dist/core/run.js.map +1 -1
  31. package/dist/entry.js +15 -8
  32. package/dist/entry.js.map +1 -1
  33. package/dist/informational/answer.d.ts +25 -0
  34. package/dist/informational/answer.js +90 -0
  35. package/dist/informational/answer.js.map +1 -0
  36. package/dist/issues/intake.d.ts +1 -1
  37. package/dist/main.js +4 -1
  38. package/dist/main.js.map +1 -1
  39. package/dist/operations/change.js +0 -2
  40. package/dist/operations/change.js.map +1 -1
  41. package/dist/operations/completion.js +2 -0
  42. package/dist/operations/completion.js.map +1 -1
  43. package/dist/operations/controller.js +7 -3
  44. package/dist/operations/controller.js.map +1 -1
  45. package/dist/operations/evidence.d.ts +20 -0
  46. package/dist/operations/evidence.js +38 -0
  47. package/dist/operations/evidence.js.map +1 -0
  48. package/dist/operations/mcp.d.ts +7 -0
  49. package/dist/operations/mcp.js +62 -12
  50. package/dist/operations/mcp.js.map +1 -1
  51. package/dist/operations/state.d.ts +5 -0
  52. package/dist/operations/state.js.map +1 -1
  53. package/dist/paseo/deterministicSession.d.ts +10 -2
  54. package/dist/paseo/deterministicSession.js +39 -5
  55. package/dist/paseo/deterministicSession.js.map +1 -1
  56. package/dist/paseo/launchSpec.d.ts +2 -0
  57. package/dist/paseo/launchSpec.js +5 -5
  58. package/dist/paseo/launchSpec.js.map +1 -1
  59. package/dist/paseo/start.d.ts +1 -1
  60. package/dist/paseo/start.js +6 -1
  61. package/dist/paseo/start.js.map +1 -1
  62. package/dist/workers/agentPrompt.d.ts +2 -0
  63. package/dist/workers/agentPrompt.js +13 -15
  64. package/dist/workers/agentPrompt.js.map +1 -1
  65. package/dist/workers/direct.js +10 -4
  66. package/dist/workers/direct.js.map +1 -1
  67. package/dist/workers/paseo.js +13 -4
  68. package/dist/workers/paseo.js.map +1 -1
  69. package/dist/workers/podman.js +10 -4
  70. package/dist/workers/podman.js.map +1 -1
  71. package/docs/ARCHITECTURE.md +40 -0
  72. package/docs/CONTEXT_EFFICIENCY.md +18 -2
  73. package/docs/EVALS.md +12 -0
  74. package/docs/OPERATION_SUPERVISION.md +14 -0
  75. package/docs/PASEO.md +35 -1
  76. package/docs/VALIDATION.md +8 -0
  77. package/package.json +1 -1
  78. package/presets/agents/default.jsonc +3 -3
  79. package/presets/agents/orchestration.jsonc +1 -0
@@ -0,0 +1,100 @@
1
+ import { z } from "zod";
2
+ export const semanticIntentValues = ["informational", "audit", "change", "run", "status", "cancel"];
3
+ export const intentDecisionSourceValues = ["lead-semantic", "explicit-cli", "heuristic-fallback"];
4
+ export const intentDecisionResolutionValues = ["resolved", "ambiguous", "unresolved-reference"];
5
+ const effectsSchema = z.object({
6
+ evaluate: z.boolean(),
7
+ mutateRepository: z.boolean(),
8
+ executePreparedTask: z.boolean(),
9
+ deliver: z.boolean()
10
+ }).strict();
11
+ const continuationSchema = z.object({
12
+ operationId: z.string().min(1).max(200).optional(),
13
+ findingIds: z.array(z.string().min(1).max(200)).max(100).optional(),
14
+ taskId: z.string().min(1).max(200).optional()
15
+ }).strict();
16
+ export const intentDecisionV1Schema = z.object({
17
+ version: z.literal(1),
18
+ source: z.enum(intentDecisionSourceValues),
19
+ userTurnId: z.string().min(1).max(200).optional(),
20
+ intent: z.enum(semanticIntentValues),
21
+ requestedOutcome: z.string().min(1).max(2_000),
22
+ effects: effectsSchema,
23
+ continuation: continuationSchema.optional(),
24
+ constraints: z.array(z.string().min(1).max(500)).max(32).optional(),
25
+ confidence: z.number().min(0).max(1).optional(),
26
+ resolution: z.enum(intentDecisionResolutionValues).default("resolved")
27
+ }).strict();
28
+ export class InvalidIntentDecisionError extends Error {
29
+ code = "INVALID_INTENT_DECISION";
30
+ constructor(message) {
31
+ super(`${"INVALID_INTENT_DECISION"}: ${message}`);
32
+ this.name = "InvalidIntentDecisionError";
33
+ }
34
+ }
35
+ /**
36
+ * Validate only the lead's typed semantic decision. This function deliberately
37
+ * does not accept a human request and never performs natural-language parsing.
38
+ */
39
+ export function validateIntentDecision(value) {
40
+ const parsed = intentDecisionV1Schema.safeParse(value);
41
+ if (!parsed.success)
42
+ return { ok: false, issues: parsed.error.issues.map((issue) => `${issue.path.join(".") || "decision"}: ${issue.message}`) };
43
+ const issues = decisionInvariantIssues(parsed.data);
44
+ return issues.length ? { ok: false, issues } : { ok: true, value: parsed.data };
45
+ }
46
+ export function parseIntentDecision(value) {
47
+ const result = validateIntentDecision(value);
48
+ if (!result.ok)
49
+ throw new InvalidIntentDecisionError(result.issues.join("; "));
50
+ return result.value;
51
+ }
52
+ export function assertIntentDecisionForRoute(value, route) {
53
+ const decision = parseIntentDecision(value);
54
+ if (decision.intent !== route)
55
+ throw new InvalidIntentDecisionError(`route ${route} does not match intent ${decision.intent}`);
56
+ if (decision.resolution !== "resolved" && (route === "change" || route === "run"))
57
+ throw new InvalidIntentDecisionError(`${route} requires a resolved referent`);
58
+ return decision;
59
+ }
60
+ export function createIntentDecision(intent, requestedOutcome, source, options = {}) {
61
+ return parseIntentDecision({
62
+ version: 1,
63
+ source,
64
+ intent,
65
+ requestedOutcome,
66
+ effects: options.effects ?? defaultEffects(intent),
67
+ userTurnId: options.userTurnId,
68
+ continuation: options.continuation,
69
+ constraints: options.constraints,
70
+ confidence: options.confidence,
71
+ resolution: options.resolution ?? "resolved"
72
+ });
73
+ }
74
+ export function defaultEffects(intent) {
75
+ switch (intent) {
76
+ case "informational": return { evaluate: false, mutateRepository: false, executePreparedTask: false, deliver: false };
77
+ case "audit": return { evaluate: true, mutateRepository: false, executePreparedTask: false, deliver: false };
78
+ case "change": return { evaluate: false, mutateRepository: true, executePreparedTask: false, deliver: false };
79
+ case "run": return { evaluate: false, mutateRepository: false, executePreparedTask: true, deliver: false };
80
+ case "status":
81
+ case "cancel": return { evaluate: false, mutateRepository: false, executePreparedTask: false, deliver: false };
82
+ }
83
+ }
84
+ function decisionInvariantIssues(decision) {
85
+ const issues = [];
86
+ if (decision.effects.deliver)
87
+ issues.push("deliver must remain false; delivery is controller-owned");
88
+ if (decision.intent === "informational" && (decision.effects.evaluate || decision.effects.mutateRepository || decision.effects.executePreparedTask))
89
+ issues.push("informational decisions cannot evaluate, mutate, or execute prepared tasks");
90
+ if (decision.intent === "audit" && (!decision.effects.evaluate || decision.effects.mutateRepository || decision.effects.executePreparedTask))
91
+ issues.push("audit decisions require evaluate=true and mutation/execution=false");
92
+ if (decision.intent === "change" && !decision.effects.mutateRepository)
93
+ issues.push("change decisions require mutateRepository=true");
94
+ if (decision.intent === "run" && !decision.effects.executePreparedTask)
95
+ issues.push("run decisions require executePreparedTask=true");
96
+ if ((decision.intent === "status" || decision.intent === "cancel") && (decision.effects.evaluate || decision.effects.mutateRepository || decision.effects.executePreparedTask))
97
+ issues.push(`${decision.intent} decisions cannot request engineering effects`);
98
+ return issues;
99
+ }
100
+ //# sourceMappingURL=intentDecision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intentDecision.js","sourceRoot":"","sources":["../../src/audit/intentDecision.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { ResolvedAgentTopology } from "../agents/types.js";
2
2
  import { type NormalizedFinding } from "../agents/outputContracts.js";
3
3
  import { type QualityGateResult, type SeverityCounts } from "../agents/qualityConvergence.js";
4
4
  import type { HarnessProjectConfig, TaskRisk, ValidationCheck, WorkerSession } from "../core/types.js";
5
+ import type { IntentDecisionV1 } from "./intentDecision.js";
5
6
  export type AuditFailureClass = "NONE" | "ASSERTION_FAILURE" | "ENVIRONMENT_FAILURE" | "SANDBOX_DENIAL" | "MISSING_DEPENDENCY" | "TOOL_FAILURE";
6
7
  export type AuditStatus = "CLEAN" | "FINDINGS" | "DEGRADED";
7
8
  export interface AuditRequest {
@@ -11,6 +12,7 @@ export interface AuditRequest {
11
12
  risk?: TaskRisk;
12
13
  reviewers?: string[];
13
14
  auditId?: string;
15
+ intentDecision?: IntentDecisionV1;
14
16
  }
15
17
  export interface AuditValidationCheck extends ValidationCheck {
16
18
  failureClass: AuditFailureClass;
@@ -19,6 +21,7 @@ export interface AuditReport {
19
21
  version: 1;
20
22
  auditId: string;
21
23
  intent: "audit";
24
+ intentDecision?: IntentDecisionV1;
22
25
  request: string;
23
26
  status: AuditStatus;
24
27
  startedAt: string;
package/dist/audit/run.js CHANGED
@@ -19,7 +19,6 @@ import { dispatchMaterializedAgentPrompt, materializeAgentPrompt } from "../work
19
19
  import { recordEvent } from "../telemetry/events.js";
20
20
  import { runProcess } from "../utils/process.js";
21
21
  import { compileAuditReviewerPrompt } from "./reviewerPrompt.js";
22
- import { assertContextReadiness } from "../context/preflight.js";
23
22
  const AUDIT_OUTPUT_DIR = ".harness/audits";
24
23
  const DEFAULT_AUDIT_REVIEWERS = [
25
24
  "code-quality-reviewer",
@@ -30,7 +29,6 @@ const DEFAULT_AUDIT_REVIEWERS = [
30
29
  ];
31
30
  const AUDIT_REVIEWER_BUDGET = { low: 5, medium: 6, high: 8 };
32
31
  export async function runAudit(root, config, input) {
33
- await assertContextReadiness(root, config);
34
32
  const startedAt = new Date().toISOString();
35
33
  const auditId = input.auditId ?? createAuditId(input.request);
36
34
  const baseRef = config.validation?.baseRef ?? "HEAD";
@@ -118,6 +116,7 @@ export async function runAudit(root, config, input) {
118
116
  version: 1,
119
117
  auditId,
120
118
  intent: "audit",
119
+ intentDecision: input.intentDecision,
121
120
  request: input.request,
122
121
  status,
123
122
  startedAt,
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/audit/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/audit/run.ts"],"names":[],"mappings":"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"}
@@ -136,32 +136,55 @@ export class ContextBudgetGateway {
136
136
  async persistRawFragment(operationId, fragment) {
137
137
  if (!this.persist)
138
138
  return { ...fragment, source: { ...fragment.source, sha256: fragment.source?.sha256 ?? sha256(fragment.content) } };
139
- const relative = fragment.source?.artifact ?? path.posix.join(".harness", "context", safeSegment(operationId), `${safeSegment(fragment.id)}.raw`);
140
- const absolute = safePath(this.root, relative);
141
- await assertNoSymlinkEscape(this.root, absolute);
139
+ const requested = fragment.source?.artifact ?? path.posix.join(".harness", "context", safeSegment(operationId), `${safeSegment(fragment.id)}.raw`);
142
140
  const contentSha256 = sha256(fragment.content);
143
141
  if (fragment.source?.sha256 && fragment.source.sha256 !== contentSha256)
144
- throw new Error(`Context source hash mismatch for '${relative}'.`);
142
+ throw new Error(`Context source hash mismatch for '${requested}'.`);
143
+ let relative = requested;
144
+ let absolute = safePath(this.root, relative);
145
+ await assertNoSymlinkEscape(this.root, absolute);
145
146
  await fs.mkdir(path.dirname(absolute), { recursive: true });
146
- let actual;
147
- try {
148
- const existing = await fs.readFile(absolute);
149
- actual = sha256(existing);
147
+ const existing = await readArtifact(absolute);
148
+ if (existing) {
149
+ const actual = sha256(existing);
150
150
  if (fragment.source?.sha256 && fragment.source.sha256 !== actual)
151
151
  throw new Error(`Context source hash mismatch for '${relative}'.`);
152
- if (!fragment.source?.sha256 && existing.toString("utf8") !== fragment.content)
153
- throw new Error(`Context source artifact '${relative}' does not match the supplied content.`);
152
+ if (actual !== contentSha256) {
153
+ // Fragment IDs are stable semantic labels, but their content is agent- and
154
+ // phase-specific. Keep the legacy path for the first writer and derive a
155
+ // deterministic content-addressed sibling for later implicit collisions.
156
+ if (fragment.source?.sha256)
157
+ throw new Error(`Context source hash mismatch for '${relative}'.`);
158
+ relative = disambiguatedArtifactPath(requested, contentSha256);
159
+ absolute = safePath(this.root, relative);
160
+ await assertNoSymlinkEscape(this.root, absolute);
161
+ await fs.mkdir(path.dirname(absolute), { recursive: true });
162
+ const sibling = await readArtifact(absolute);
163
+ if (sibling && sha256(sibling) !== contentSha256)
164
+ throw new Error(`Context source artifact collision for '${relative}'.`);
165
+ if (!sibling && !(await writeArtifactIfAbsent(absolute, fragment.content)))
166
+ throw new Error(`Context source artifact collision for '${relative}'.`);
167
+ }
154
168
  }
155
- catch (error) {
156
- if (error instanceof Error && error.message.includes("Context source"))
157
- throw error;
158
- await fs.writeFile(absolute, fragment.content, { encoding: "utf8", flag: "wx" }).catch(async (writeError) => {
159
- if (writeError.code !== "EEXIST")
160
- throw writeError;
161
- });
162
- actual = sha256(fragment.content);
169
+ else if (!(await writeArtifactIfAbsent(absolute, fragment.content))) {
170
+ // Another writer won the legacy path between read and write. Re-read it and
171
+ // use the same deterministic sibling path if its bytes differ.
172
+ const winner = await readArtifact(absolute);
173
+ if (winner && sha256(winner) === contentSha256)
174
+ return { ...fragment, source: { ...fragment.source, artifact: relative, sha256: contentSha256 } };
175
+ if (fragment.source?.sha256)
176
+ throw new Error(`Context source hash mismatch for '${relative}'.`);
177
+ relative = disambiguatedArtifactPath(requested, contentSha256);
178
+ absolute = safePath(this.root, relative);
179
+ await assertNoSymlinkEscape(this.root, absolute);
180
+ await fs.mkdir(path.dirname(absolute), { recursive: true });
181
+ const sibling = await readArtifact(absolute);
182
+ if (sibling && sha256(sibling) !== contentSha256)
183
+ throw new Error(`Context source artifact collision for '${relative}'.`);
184
+ if (!sibling && !(await writeArtifactIfAbsent(absolute, fragment.content)))
185
+ throw new Error(`Context source artifact collision for '${relative}'.`);
163
186
  }
164
- return { ...fragment, source: { ...fragment.source, artifact: relative, sha256: actual } };
187
+ return { ...fragment, source: { ...fragment.source, artifact: relative, sha256: contentSha256 } };
165
188
  }
166
189
  async persistEnvelope(operationId, envelope) {
167
190
  const file = safePath(this.root, path.posix.join(".harness", "context", safeSegment(operationId), "envelope.json"));
@@ -210,6 +233,37 @@ function metricsFor(raw, optimized, delivered, discarded) {
210
233
  return { rawBytes, projectedBytes, deliveredBytes, estimatedRawTokens: rawTokens, estimatedDeliveredTokens: deliveredTokens, retrievedFragments: 0, deliveredFragments: delivered.length, compressedFragments: compressed, discardedFragments: discarded.length, retrievalRequests: 0, retrievalRetries: 0, retrievalEscapes: 0, compressionRatio: rawTokens ? deliveredTokens / rawTokens : undefined, projectionRatio: rawTokens ? projectedTokens / rawTokens : undefined };
211
234
  }
212
235
  function safeSegment(value) { const sanitized = value.replace(/[^A-Za-z0-9._-]+/g, "-").replace(/^-+|-+$/g, ""); return sanitized || "fragment"; }
236
+ function disambiguatedArtifactPath(relative, contentSha256) {
237
+ const extension = path.posix.extname(relative);
238
+ const stem = extension ? relative.slice(0, -extension.length) : relative;
239
+ return `${stem}.${contentSha256.slice(0, 16)}${extension}`;
240
+ }
241
+ async function readArtifact(absolute) {
242
+ try {
243
+ return await fs.readFile(absolute);
244
+ }
245
+ catch (error) {
246
+ if (error.code === "ENOENT")
247
+ return undefined;
248
+ throw error;
249
+ }
250
+ }
251
+ async function writeArtifactIfAbsent(absolute, content) {
252
+ for (let attempt = 0; attempt < 3; attempt += 1) {
253
+ try {
254
+ await fs.writeFile(absolute, content, { encoding: "utf8", flag: "wx" });
255
+ return true;
256
+ }
257
+ catch (error) {
258
+ if (error.code !== "EEXIST")
259
+ throw error;
260
+ const winner = await readArtifact(absolute);
261
+ if (winner)
262
+ return sha256(winner) === sha256(content);
263
+ }
264
+ }
265
+ throw new Error(`Context source artifact could not be established at '${absolute}'.`);
266
+ }
213
267
  function safePath(root, relative) { if (path.isAbsolute(relative))
214
268
  throw new Error("Context artifact paths must be relative to the project root."); const absoluteRoot = path.resolve(root); const absolute = path.resolve(absoluteRoot, relative); if (absolute !== absoluteRoot && !absolute.startsWith(`${absoluteRoot}${path.sep}`))
215
269
  throw new Error("Context artifact path escapes the project root."); return absolute; }
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/context/gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/context/gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACtH,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAMtD,MAAM,OAAO,oBAAoB;IAKF;IAA+B;IAJ3C,UAAU,CAA8B;IACxC,OAAO,CAAU;IACjB,SAAS,CAAU;IAEpC,YAA6B,IAAY,EAAmB,MAA4B,EAAE,UAAuC,EAAE;QAAtG,SAAI,GAAJ,IAAI,CAAQ;QAAmB,WAAM,GAAN,MAAM,CAAsB;QACtF,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,IAAI,UAAU,CAAC;QACrE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,2BAA2B,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC7M,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACtG,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC/H,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7F,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/F,MAAM,UAAU,GAA0E,EAAE,CAAC;QAE7F,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;YAC/B,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAC3B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,EAAE,mBAAmB,KAAK,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC5N,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC;QAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC9K,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/E,MAAM,kBAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,mBAAmB,KAAK,KAAK,CAAC;QAC/E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE,kBAAkB,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACjb,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC9G,MAAM,SAAS,GAAG,IAAI,uBAAuB,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAE3R,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,KAAK,KAAK;YAAE,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACrH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,kBAAkB,EAAE,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC;IAC/M,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,QAAyB,EAAE,WAAmB,EAAE,oBAA4B,EAAE,mBAA4B,EAAE,kBAA2B,EAAE,mBAA4B;QAClM,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,kBAAkB,CAAC,QAAQ,CAAC;YAAE,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,QAAQ,CAAC,YAAY,KAAK,aAAa;YAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACtI,IAAI,QAAQ,CAAC,YAAY,KAAK,aAAa,IAAI,mBAAmB,EAAE,CAAC;YACnE,MAAM,OAAO,GAAG,gBAAgB,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,MAAM,cAAc,sEAAsE,CAAC;YACxJ,OAAO,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,cAAc,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC7G,CAAC;QACD,yEAAyE;QACzE,wEAAwE;QACxE,gDAAgD;QAChD,IAAI,QAAQ,CAAC,YAAY,KAAK,aAAa;YAAE,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAChF,IAAI,SAAoC,CAAC;QACzC,IAAI,QAAQ,CAAC,YAAY,KAAK,cAAc;YAAE,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;;YACjF,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC3B,KAAK,YAAY;oBAAE,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBAClE,KAAK,OAAO;oBAAE,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBACxD,KAAK,WAAW;oBAAE,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBAChE,KAAK,MAAM;oBAAE,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBACtD,KAAK,QAAQ;oBAAE,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBAC1D,KAAK,gBAAgB;oBAAE,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBAClE,KAAK,aAAa;oBAAE,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBACnE,KAAK,QAAQ;oBAAE,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBAC9D,KAAK,aAAa,CAAC;gBACnB,KAAK,oBAAoB,CAAC;gBAC1B,KAAK,eAAe,CAAC;gBACrB,KAAK,OAAO,CAAC;gBACb,KAAK,SAAS,CAAC;gBACf,KAAK,UAAU,CAAC;gBAChB,KAAK,WAAW;oBAAE,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBAC7D,KAAK,cAAc;oBAAE,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAAC,MAAM;gBACpE,OAAO,CAAC,CAAC,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC/C,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,cAAc,IAAI,oBAAoB,EAAE,CAAC;YAC5F,IAAI,kBAAkB,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC/C,IAAI,mBAAmB;oBAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,QAAQ,CAAC,EAAE,oEAAoE,CAAC,CAAC;gBACtL,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACzE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBACjM,IAAI,WAAW,CAAC,gBAAgB,GAAG,SAAS,CAAC,eAAe,EAAE,CAAC;oBAC7D,MAAM,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACvG,OAAO,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,WAAW,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;gBAC7P,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,KAAK,KAAK;oBAAE,MAAM,KAAK,CAAC;gBACtE,uEAAuE;YACzE,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,WAAmB,EAAE,QAAyB;QAC7E,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QACvI,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QACnJ,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,SAAS,IAAI,CAAC,CAAC;QAE7I,IAAI,QAAQ,GAAG,SAAS,CAAC;QACzB,IAAI,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7C,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,IAAI,CAAC,CAAC;YACrI,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;gBAC7B,2EAA2E;gBAC3E,yEAAyE;gBACzE,yEAAyE;gBACzE,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,IAAI,CAAC,CAAC;gBAChG,QAAQ,GAAG,yBAAyB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;gBAC/D,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACzC,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACjD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC7C,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,aAAa;oBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,IAAI,CAAC,CAAC;gBAC1H,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,IAAI,CAAC,CAAC;YACtJ,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACtE,4EAA4E;YAC5E,+DAA+D;YAC/D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,aAAa;gBAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;YAClJ,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,IAAI,CAAC,CAAC;YAChG,QAAQ,GAAG,yBAAyB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAC/D,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACzC,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,aAAa;gBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,IAAI,CAAC,CAAC;YAC1H,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,IAAI,CAAC,CAAC;QACtJ,CAAC;QACD,OAAO,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;IACpG,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,QAAyB;QAC1E,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;QACpH,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7E,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAkC,EAAE,OAAuB,EAAE,QAAyB;QAChH,MAAM,UAAU,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,OAAO,CAAC,wBAAwB,EAAE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC;QACxmB,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,yBAAyB,EAAE,UAAU,CAAC,CAAC;QACjF,MAAM,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,yBAAyB,EAAE,EAAE,GAAG,UAAU,EAAE,kBAAkB,EAAE,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5I,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,MAA4B,EAAE,OAAkC,EAAE,UAAuC,EAAE;IAC5J,OAAO,IAAI,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAsC,EAAE,SAAiB;IACnF,MAAM,OAAO,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3N,MAAM,QAAQ,GAAgC,EAAE,CAAC;IAAC,IAAI,IAAI,GAAG,CAAC,CAAC;IAC/D,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;QAC/B,IAAI,IAAI,GAAG,QAAQ,CAAC,eAAe,IAAI,SAAS,EAAE,CAAC;YAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAC,IAAI,IAAI,QAAQ,CAAC,eAAe,CAAC;YAAC,SAAS;QAAC,CAAC;QAC1H,IAAI,oBAAoB,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,QAAQ,CAAC,EAAE,qCAAqC,CAAC,CAAC;IACvJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAyB;IAClD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5O,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,+EAA+E,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5K,OAAO,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,cAAc,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;AACzK,CAAC;AAED,SAAS,UAAU,CAAC,GAAsB,EAAE,SAAsC,EAAE,SAAsC,EAAE,SAA4B;IACtJ,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAAC,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAAC,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IACnS,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAAC,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAAC,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IACrS,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;IAC9E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,SAAS,EAAE,wBAAwB,EAAE,eAAe,EAAE,kBAAkB,EAAE,CAAC,EAAE,kBAAkB,EAAE,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AACjd,CAAC;AAED,SAAS,WAAW,CAAC,KAAa,IAAY,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,SAAS,IAAI,UAAU,CAAC,CAAC,CAAC;AAClK,SAAS,yBAAyB,CAAC,QAAgB,EAAE,aAAqB;IACxE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzE,OAAO,GAAG,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC;AAC7D,CAAC;AACD,KAAK,UAAU,YAAY,CAAC,QAAgB;IAC1C,IAAI,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAAC,CAAC;IAC3C,OAAO,KAAK,EAAE,CAAC;QAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAAC,MAAM,KAAK,CAAC;IAAC,CAAC;AAC1G,CAAC;AACD,KAAK,UAAU,qBAAqB,CAAC,QAAgB,EAAE,OAAe;IACpE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC;YAAC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QAC7F,OAAO,KAAK,EAAE,CAAC;YACb,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;YACpE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wDAAwD,QAAQ,IAAI,CAAC,CAAC;AACxF,CAAC;AACD,SAAS,QAAQ,CAAC,IAAY,EAAE,QAAgB,IAAY,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;IAAE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,KAAK,YAAY,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;AACvb,KAAK,UAAU,qBAAqB,CAAC,IAAY,EAAE,QAAgB;IACjE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,MAAM,GAAG,QAAQ,CAAC;IACtB,OAAO,MAAM,KAAK,YAAY,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAClF,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC3H,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gBAAE,MAAM,KAAK,CAAC;YACrF,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QACtE,CAAC;QACD,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,MAAM,KAAK,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;AAClG,CAAC;AACD,SAAS,oBAAoB,CAAC,QAAmC,IAAa,OAAO,QAAQ,CAAC,YAAY,KAAK,UAAU,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC;AAE7J,MAAM,UAAU,cAAc,CAAC,WAAmB,EAAE,UAAkB,EAAE,YAAoB;IAC1F,OAAO,iBAAiB,kBAAkB,CAAC,WAAW,CAAC,IAAI,kBAAkB,CAAC,UAAU,CAAC,IAAI,YAAY,EAAE,CAAC;AAC9G,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { HarnessProjectConfig } from "../core/types.js";
2
+ import type { AgentExecutionSelection } from "../agents/types.js";
2
3
  export interface ContextReadiness {
3
4
  ok: boolean;
4
5
  checks: Array<{
@@ -9,5 +10,11 @@ export interface ContextReadiness {
9
10
  version?: string;
10
11
  }>;
11
12
  }
12
- export declare function checkContextReadiness(root: string, config: HarnessProjectConfig): Promise<ContextReadiness>;
13
- export declare function assertContextReadiness(root: string, config: HarnessProjectConfig): Promise<void>;
13
+ /**
14
+ * Readiness is scoped to an execution contract. A project-level `required`
15
+ * flag is not enough to make every role (especially the coordinator) require
16
+ * the provider. Callers that do not yet have a selection receive a deferred
17
+ * result and must re-check after routing.
18
+ */
19
+ export declare function checkContextReadiness(root: string, config: HarnessProjectConfig, selection?: AgentExecutionSelection): Promise<ContextReadiness>;
20
+ export declare function assertContextReadiness(root: string, config: HarnessProjectConfig, selection?: AgentExecutionSelection): Promise<void>;
@@ -1,23 +1,43 @@
1
1
  import { HeadroomCompressionProvider } from "./compression/headroom.js";
2
- import { SerenaSemanticProvider } from "./repository/serena.js";
3
- export async function checkContextReadiness(root, config) {
2
+ import { resolveContextTransportCapabilities } from "./transport.js";
3
+ /**
4
+ * Readiness is scoped to an execution contract. A project-level `required`
5
+ * flag is not enough to make every role (especially the coordinator) require
6
+ * the provider. Callers that do not yet have a selection receive a deferred
7
+ * result and must re-check after routing.
8
+ */
9
+ export async function checkContextReadiness(root, config, selection) {
4
10
  if (!config.context)
5
11
  return { ok: true, checks: [] };
6
12
  const checks = [];
7
- const semanticProvider = config.context.semanticRetrieval?.provider ?? "serena";
8
- if (semanticProvider !== "none") {
9
- const semantic = await new SerenaSemanticProvider().doctor(root);
10
- checks.push({ component: "serena", required: config.context.semanticRetrieval?.required ?? true, ...semantic });
13
+ let compressionRequired = false;
14
+ if (selection) {
15
+ const capabilities = await resolveContextTransportCapabilities(root, config, selection, { mode: "live" });
16
+ compressionRequired = capabilities.requiredByExecutionContract.compression;
17
+ if (config.context.semanticRetrieval?.provider && config.context.semanticRetrieval.provider !== "none") {
18
+ checks.push({
19
+ component: "serena",
20
+ required: capabilities.requiredByProject.semanticRetrieval && capabilities.requiredByExecutionContract.semanticRetrieval,
21
+ ok: capabilities.semanticRetrieval,
22
+ message: capabilities.semanticRetrieval ? "Serena is available for this execution contract." : capabilities.reasons.join("; ") || "Serena is unavailable for this execution contract."
23
+ });
24
+ }
25
+ }
26
+ else if (config.context.semanticRetrieval?.provider && config.context.semanticRetrieval.provider !== "none") {
27
+ checks.push({ component: "serena", required: false, ok: true, message: "Deferred until an execution contract is selected; project required=true is not a global role requirement." });
11
28
  }
12
29
  const compressionProvider = config.context.compression?.provider ?? "headroom";
13
- if (compressionProvider !== "none") {
30
+ if (compressionProvider !== "none" && compressionRequired) {
14
31
  const compression = await new HeadroomCompressionProvider({ command: config.context.compression?.command }).doctor(root);
15
- checks.push({ component: "headroom", required: config.context.compression?.required ?? true, ...compression });
32
+ checks.push({ component: "headroom", required: true, ...compression });
33
+ }
34
+ else if (compressionProvider !== "none" && !selection) {
35
+ checks.push({ component: "headroom", required: false, ok: true, message: "Deferred until an execution contract declares compression requirements." });
16
36
  }
17
37
  return { ok: checks.every((check) => !check.required || check.ok), checks };
18
38
  }
19
- export async function assertContextReadiness(root, config) {
20
- const readiness = await checkContextReadiness(root, config);
39
+ export async function assertContextReadiness(root, config, selection) {
40
+ const readiness = await checkContextReadiness(root, config, selection);
21
41
  const failures = readiness.checks.filter((check) => check.required && !check.ok);
22
42
  if (failures.length)
23
43
  throw new Error(`BLOCKED_EXTERNAL: mandatory context provider readiness failed. ${failures.map((failure) => `${failure.component}: ${failure.message}`).join("; ")}`);
@@ -1 +1 @@
1
- {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../src/context/preflight.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAY,EAAE,MAA4B;IACpF,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACrD,MAAM,MAAM,GAA+B,EAAE,CAAC;IAC9C,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,QAAQ,IAAI,QAAQ,CAAC;IAChF,IAAI,gBAAgB,KAAK,MAAM,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,sBAAsB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,QAAQ,IAAI,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IAClH,CAAC;IACD,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,IAAI,UAAU,CAAC;IAC/E,IAAI,mBAAmB,KAAK,MAAM,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,MAAM,IAAI,2BAA2B,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzH,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,IAAI,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC;IACjH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;AAC9E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,IAAY,EAAE,MAA4B;IACrF,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACjF,IAAI,QAAQ,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,kEAAkE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC7L,CAAC"}
1
+ {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../src/context/preflight.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,19 @@
1
1
  import type { HarnessProjectConfig } from "../core/types.js";
2
- import type { AgentExecutionSelection } from "../agents/types.js";
2
+ import type { AgentExecutionSelection, ContextCapabilityRequirement, RuntimeCapabilities } from "../agents/types.js";
3
3
  import { runProcess } from "../utils/process.js";
4
+ export interface ResolvedContextCapabilityRequirements {
5
+ repositoryMap: ContextCapabilityRequirement;
6
+ semanticRetrieval: ContextCapabilityRequirement;
7
+ rawRetrieval: ContextCapabilityRequirement;
8
+ compression: ContextCapabilityRequirement;
9
+ source: "agent-contract" | "coordinator-default" | "project-default";
10
+ }
11
+ export interface TransportCapabilities {
12
+ mcpProjection: boolean;
13
+ localMcpProjection: boolean;
14
+ directRuntimeConfig: boolean;
15
+ reasons: string[];
16
+ }
4
17
  export interface EffectiveContextCapabilities {
5
18
  contextGateway: boolean;
6
19
  repositoryMap: boolean;
@@ -11,7 +24,23 @@ export interface EffectiveContextCapabilities {
11
24
  context: boolean;
12
25
  headroom: boolean;
13
26
  };
27
+ requirements: ResolvedContextCapabilityRequirements;
28
+ runtimeCapabilities: RuntimeCapabilities;
29
+ transportCapabilities: TransportCapabilities;
30
+ requiredByProject: {
31
+ semanticRetrieval: boolean;
32
+ rawRetrieval: boolean;
33
+ repositoryMap: boolean;
34
+ compression: boolean;
35
+ };
36
+ requiredByExecutionContract: {
37
+ semanticRetrieval: boolean;
38
+ rawRetrieval: boolean;
39
+ repositoryMap: boolean;
40
+ compression: boolean;
41
+ };
14
42
  readinessRequirements: string[];
43
+ degradations: string[];
15
44
  reasons: string[];
16
45
  }
17
46
  export interface TransportProbe {
@@ -24,6 +53,9 @@ export interface PodmanSerenaProbe {
24
53
  exposesSerena: boolean;
25
54
  message: string;
26
55
  }
56
+ export declare function resolveContextCapabilityRequirements(config: HarnessProjectConfig, selection: AgentExecutionSelection): ResolvedContextCapabilityRequirements;
57
+ export declare function runtimeCapabilitiesFor(selection: AgentExecutionSelection): RuntimeCapabilities;
58
+ export declare function transportCapabilitiesFor(config: HarnessProjectConfig, selection: AgentExecutionSelection): TransportCapabilities;
27
59
  /** Resolve effective capabilities without touching external runtimes. */
28
60
  export declare function staticContextCapabilities(config: HarnessProjectConfig, selection: AgentExecutionSelection): EffectiveContextCapabilities;
29
61
  export declare function resolveContextTransportCapabilities(root: string, config: HarnessProjectConfig, selection: AgentExecutionSelection, probe?: TransportProbe & {