harness-engineering-agent 0.3.27 → 0.3.29

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 (121) hide show
  1. package/README.md +3 -0
  2. package/dist/controller/agent-output-contracts.d.ts +16 -0
  3. package/dist/controller/agent-output-contracts.d.ts.map +1 -1
  4. package/dist/controller/agent-output.d.ts.map +1 -1
  5. package/dist/controller/agent-output.js +48 -1
  6. package/dist/controller/agent-output.js.map +1 -1
  7. package/dist/controller/agent-session.d.ts +2 -0
  8. package/dist/controller/agent-session.d.ts.map +1 -1
  9. package/dist/controller/agent-session.js +1 -0
  10. package/dist/controller/agent-session.js.map +1 -1
  11. package/dist/controller/contracts.d.ts +7 -0
  12. package/dist/controller/contracts.d.ts.map +1 -1
  13. package/dist/controller/contracts.js.map +1 -1
  14. package/dist/controller/failure-classification.d.ts +5 -0
  15. package/dist/controller/failure-classification.d.ts.map +1 -0
  16. package/dist/controller/failure-classification.js +6 -0
  17. package/dist/controller/failure-classification.js.map +1 -0
  18. package/dist/controller/index.d.ts +5 -0
  19. package/dist/controller/index.d.ts.map +1 -1
  20. package/dist/controller/index.js +5 -0
  21. package/dist/controller/index.js.map +1 -1
  22. package/dist/controller/planner-context-contract.d.ts +12 -0
  23. package/dist/controller/planner-context-contract.d.ts.map +1 -1
  24. package/dist/controller/route-resolver.d.ts.map +1 -1
  25. package/dist/controller/route-resolver.js +19 -8
  26. package/dist/controller/route-resolver.js.map +1 -1
  27. package/dist/controller/run-controller.d.ts.map +1 -1
  28. package/dist/controller/run-controller.js +110 -9
  29. package/dist/controller/run-controller.js.map +1 -1
  30. package/dist/controller/run-error-finalizer.d.ts +15 -0
  31. package/dist/controller/run-error-finalizer.d.ts.map +1 -1
  32. package/dist/controller/run-error-finalizer.js +103 -4
  33. package/dist/controller/run-error-finalizer.js.map +1 -1
  34. package/dist/controller/run-lease.d.ts +26 -0
  35. package/dist/controller/run-lease.d.ts.map +1 -0
  36. package/dist/controller/run-lease.js +63 -0
  37. package/dist/controller/run-lease.js.map +1 -0
  38. package/dist/controller/run-persistence.d.ts +1 -1
  39. package/dist/controller/run-persistence.d.ts.map +1 -1
  40. package/dist/controller/run-persistence.js +14 -12
  41. package/dist/controller/run-persistence.js.map +1 -1
  42. package/dist/controller/run-stage-projection.d.ts +64 -0
  43. package/dist/controller/run-stage-projection.d.ts.map +1 -0
  44. package/dist/controller/run-stage-projection.js +184 -0
  45. package/dist/controller/run-stage-projection.js.map +1 -0
  46. package/dist/controller/run-watchdog.d.ts +36 -0
  47. package/dist/controller/run-watchdog.d.ts.map +1 -0
  48. package/dist/controller/run-watchdog.js +124 -0
  49. package/dist/controller/run-watchdog.js.map +1 -0
  50. package/dist/controller/task-agent-schemas.d.ts +20 -0
  51. package/dist/controller/task-agent-schemas.d.ts.map +1 -1
  52. package/dist/controller/task-executor.d.ts.map +1 -1
  53. package/dist/controller/task-executor.js +22 -0
  54. package/dist/controller/task-executor.js.map +1 -1
  55. package/dist/controller/task-graph-contract.d.ts +1 -0
  56. package/dist/controller/task-graph-contract.d.ts.map +1 -1
  57. package/dist/controller/task-graph-contract.js +1 -0
  58. package/dist/controller/task-graph-contract.js.map +1 -1
  59. package/dist/domain/context-package.d.ts +4 -0
  60. package/dist/domain/context-package.d.ts.map +1 -1
  61. package/dist/domain/context-package.js +8 -0
  62. package/dist/domain/context-package.js.map +1 -1
  63. package/dist/domain/failure.d.ts +100 -0
  64. package/dist/domain/failure.d.ts.map +1 -1
  65. package/dist/domain/failure.js +9 -0
  66. package/dist/domain/failure.js.map +1 -1
  67. package/dist/domain/index.d.ts +1 -1
  68. package/dist/domain/index.d.ts.map +1 -1
  69. package/dist/domain/index.js +1 -1
  70. package/dist/domain/index.js.map +1 -1
  71. package/dist/domain/plan-artifacts.d.ts +8 -0
  72. package/dist/domain/plan-artifacts.d.ts.map +1 -1
  73. package/dist/domain/report.d.ts +232 -0
  74. package/dist/domain/report.d.ts.map +1 -1
  75. package/dist/domain/requirement.d.ts +17 -0
  76. package/dist/domain/requirement.d.ts.map +1 -1
  77. package/dist/domain/requirement.js +10 -0
  78. package/dist/domain/requirement.js.map +1 -1
  79. package/dist/domain/run.d.ts +232 -0
  80. package/dist/domain/run.d.ts.map +1 -1
  81. package/dist/plugin/create-harness-plugin.d.ts.map +1 -1
  82. package/dist/plugin/create-harness-plugin.js +35 -6
  83. package/dist/plugin/create-harness-plugin.js.map +1 -1
  84. package/dist/plugin/harness-chat-hook.d.ts +2 -1
  85. package/dist/plugin/harness-chat-hook.d.ts.map +1 -1
  86. package/dist/plugin/harness-chat-hook.js +15 -16
  87. package/dist/plugin/harness-chat-hook.js.map +1 -1
  88. package/dist/plugin/harness-delivery-envelope.d.ts +19 -0
  89. package/dist/plugin/harness-delivery-envelope.d.ts.map +1 -0
  90. package/dist/plugin/harness-delivery-envelope.js +105 -0
  91. package/dist/plugin/harness-delivery-envelope.js.map +1 -0
  92. package/dist/plugin/harness-escalate-tool.d.ts +2 -1
  93. package/dist/plugin/harness-escalate-tool.d.ts.map +1 -1
  94. package/dist/plugin/harness-escalate-tool.js +11 -2
  95. package/dist/plugin/harness-escalate-tool.js.map +1 -1
  96. package/dist/plugin/harness-intent.d.ts +12 -0
  97. package/dist/plugin/harness-intent.d.ts.map +1 -1
  98. package/dist/plugin/harness-intent.js +2 -1
  99. package/dist/plugin/harness-intent.js.map +1 -1
  100. package/dist/plugin/harness-plugin-runtime.d.ts +2 -0
  101. package/dist/plugin/harness-plugin-runtime.d.ts.map +1 -1
  102. package/dist/plugin/harness-plugin-runtime.js +40 -7
  103. package/dist/plugin/harness-plugin-runtime.js.map +1 -1
  104. package/dist/plugin/harness-plugin-scheduler.d.ts +7 -2
  105. package/dist/plugin/harness-plugin-scheduler.d.ts.map +1 -1
  106. package/dist/plugin/harness-plugin-scheduler.js +16 -14
  107. package/dist/plugin/harness-plugin-scheduler.js.map +1 -1
  108. package/dist/plugin/harness-requirement.d.ts.map +1 -1
  109. package/dist/plugin/harness-requirement.js +4 -0
  110. package/dist/plugin/harness-requirement.js.map +1 -1
  111. package/dist/plugin/harness-run-status-tool.d.ts +7 -0
  112. package/dist/plugin/harness-run-status-tool.d.ts.map +1 -0
  113. package/dist/plugin/harness-run-status-tool.js +33 -0
  114. package/dist/plugin/harness-run-status-tool.js.map +1 -0
  115. package/dist/store/filesystem-run-store.js +5 -0
  116. package/dist/store/filesystem-run-store.js.map +1 -1
  117. package/dist/store/pending-start.d.ts +4 -0
  118. package/dist/store/pending-start.d.ts.map +1 -1
  119. package/dist/store/run-event.d.ts +232 -0
  120. package/dist/store/run-event.d.ts.map +1 -1
  121. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"harness-chat-hook.js","sourceRoot":"","sources":["../../src/plugin/harness-chat-hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-chat-hook.js","sourceRoot":"","sources":["../../src/plugin/harness-chat-hook.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { HarnessCoordinatorResponse } from "./harness-coordinator.js";
2
+ export type HarnessDeliveryEnvelope = {
3
+ /** Agent 间私有通道:HARNESS_* 协议标记 + 原始回执 JSON,禁止进入用户可见通道 */
4
+ readonly agentChannel: string;
5
+ /** 用户可见通道:仅承载渲染后的自然语言摘要 */
6
+ readonly userChannel: string;
7
+ };
8
+ /** 回执投递双通道信封:协议负载与用户可见摘要分离。 */
9
+ export declare const createSuccessDeliveryEnvelope: (response: HarnessCoordinatorResponse) => HarnessDeliveryEnvelope;
10
+ export declare const createFailureDeliveryEnvelope: (message: string) => HarnessDeliveryEnvelope;
11
+ export declare const createProgressDeliveryEnvelope: (response: HarnessCoordinatorResponse) => HarnessDeliveryEnvelope;
12
+ export declare const createBusyDuplicateEnvelope: (deliveryStatus: "busy" | "duplicate", runId?: string) => HarnessDeliveryEnvelope;
13
+ /**
14
+ * 静默剥离用户消息中误粘贴的 HARNESS_* 协议标记与其后的协议 JSON 负载;
15
+ * 剥离结果按普通上下文处理,不向用户回显协议解析细节。
16
+ */
17
+ export declare const stripProtocolPayload: (inputText: string) => string;
18
+ export declare const containsHarnessProtocolPayload: (inputText: string) => boolean;
19
+ //# sourceMappingURL=harness-delivery-envelope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harness-delivery-envelope.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-delivery-envelope.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAA;AAE1E,MAAM,MAAM,uBAAuB,GAAG;IACpC,wDAAwD;IACxD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,2BAA2B;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B,CAAA;AAED,+BAA+B;AAC/B,eAAO,MAAM,6BAA6B,GACxC,UAAU,0BAA0B,KACnC,uBAGD,CAAA;AAEF,eAAO,MAAM,6BAA6B,GAAI,SAAS,MAAM,KAAG,uBAG9D,CAAA;AAEF,eAAO,MAAM,8BAA8B,GACzC,UAAU,0BAA0B,KACnC,uBAGD,CAAA;AAOF,eAAO,MAAM,2BAA2B,GACtC,gBAAgB,MAAM,GAAG,WAAW,EACpC,QAAQ,MAAM,KACb,uBAGD,CAAA;AAiEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,WAAW,MAAM,KAAG,MAoBxD,CAAA;AAED,eAAO,MAAM,8BAA8B,GAAI,WAAW,MAAM,KAAG,OAClB,CAAA"}
@@ -0,0 +1,105 @@
1
+ import { createInternalCompletionMessage, createInternalFailureMessage, } from "./harness-chat-protocol.js";
2
+ /** 回执投递双通道信封:协议负载与用户可见摘要分离。 */
3
+ export const createSuccessDeliveryEnvelope = (response) => ({
4
+ agentChannel: createInternalCompletionMessage(response),
5
+ userChannel: renderUserSummary(response),
6
+ });
7
+ export const createFailureDeliveryEnvelope = (message) => ({
8
+ agentChannel: createInternalFailureMessage(message),
9
+ userChannel: renderFailureSummary(message),
10
+ });
11
+ export const createProgressDeliveryEnvelope = (response) => ({
12
+ agentChannel: createInternalCompletionMessage(response),
13
+ userChannel: renderUserSummary(response, true),
14
+ });
15
+ const busyDuplicatePhrase = (deliveryStatus) => deliveryStatus === "busy"
16
+ ? "当前会话已有工程任务在后台处理中,请等待其完成后再提交新任务。"
17
+ : "该工程任务已提交,正在后台处理中,请勿重复提交。";
18
+ export const createBusyDuplicateEnvelope = (deliveryStatus, runId) => ({
19
+ agentChannel: busyDuplicatePayload(deliveryStatus, runId),
20
+ userChannel: busyDuplicatePhrase(deliveryStatus),
21
+ });
22
+ const busyDuplicatePayload = (deliveryStatus, runId) => {
23
+ const marker = "<!-- HARNESS_INTERNAL_RESULT -->";
24
+ return `${marker}\n${JSON.stringify({
25
+ schemaVersion: "1.0.0",
26
+ kind: "background-result",
27
+ deliveryStatus,
28
+ ...(runId === undefined ? {} : { runId }),
29
+ })}`;
30
+ };
31
+ const statusPhrase = (status, isProgress) => {
32
+ if (isProgress)
33
+ return `任务仍在后台推进(当前阶段:${status})。`;
34
+ switch (status) {
35
+ case "completed":
36
+ return "任务已完成。";
37
+ case "failed":
38
+ return "任务未完成,已停止执行。";
39
+ case "paused":
40
+ return "任务已暂停,可提供补充信息后恢复。";
41
+ case "cancelled":
42
+ return "任务已取消。";
43
+ case "clarification_required":
44
+ return "任务需要补充业务信息后才能继续。";
45
+ case "evidence_gap":
46
+ return "任务存在证据缺口,需要补充证据后继续。";
47
+ case "blocked":
48
+ case "env_blocked":
49
+ return "任务当前受阻,需要先处理环境或信息问题。";
50
+ default:
51
+ return `任务仍在后台处理中(当前阶段:${status})。`;
52
+ }
53
+ };
54
+ const renderUserSummary = (response, isProgress = false) => {
55
+ if (response.kind === "clarification") {
56
+ return response.message;
57
+ }
58
+ if (response.kind === "report") {
59
+ return "运行报告已生成,请查看报告内容。";
60
+ }
61
+ const run = response.run;
62
+ const lines = [`${statusPhrase(run.status, isProgress)}(runId:${run.runId})`];
63
+ const failure = run.failures.at(-1);
64
+ if (failure !== undefined && ["failed", "paused"].includes(run.status)) {
65
+ lines.push(`失败摘要:${failure.summary}`);
66
+ }
67
+ const nextActions = run.blockingDetails !== undefined
68
+ ? run.blockingDetails.nextActions
69
+ : failure?.category === "planner-contract"
70
+ ? ["修复契约对齐后执行 resume"]
71
+ : [];
72
+ if (nextActions.length > 0) {
73
+ lines.push(`下一步:${nextActions.join(";")}`);
74
+ }
75
+ return lines.join("\n");
76
+ };
77
+ const renderFailureSummary = (message) => `后台任务处理失败:${message}\n可稍后重试或使用 run_status 查询最近一次运行状态。`;
78
+ const HARNESS_MARKER_PATTERN = /^<!--\s*HARNESS_[A-Z_]+\s*-->\s*$/u;
79
+ /**
80
+ * 静默剥离用户消息中误粘贴的 HARNESS_* 协议标记与其后的协议 JSON 负载;
81
+ * 剥离结果按普通上下文处理,不向用户回显协议解析细节。
82
+ */
83
+ export const stripProtocolPayload = (inputText) => {
84
+ const lines = inputText.split("\n");
85
+ const cleanedLines = [];
86
+ let stripping = false;
87
+ for (const line of lines) {
88
+ if (HARNESS_MARKER_PATTERN.test(line.trim())) {
89
+ stripping = true;
90
+ continue;
91
+ }
92
+ if (stripping) {
93
+ // 标记之后的协议 JSON 负载一并静默剥离;遇到普通自然语言行则恢复
94
+ const trimmed = line.trim();
95
+ if (trimmed.startsWith("{") || trimmed.startsWith("}") || trimmed.startsWith('"')) {
96
+ continue;
97
+ }
98
+ stripping = false;
99
+ }
100
+ cleanedLines.push(line);
101
+ }
102
+ return cleanedLines.join("\n").trim();
103
+ };
104
+ export const containsHarnessProtocolPayload = (inputText) => /<!--\s*HARNESS_[A-Z_]+\s*-->/u.test(inputText);
105
+ //# sourceMappingURL=harness-delivery-envelope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harness-delivery-envelope.js","sourceRoot":"","sources":["../../src/plugin/harness-delivery-envelope.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  import type { ToolDefinition } from "@opencode-ai/plugin";
2
2
  import { type SessionGuards } from "./harness-chat-hook.js";
3
3
  import type { HarnessCoordinator } from "./harness-coordinator.js";
4
+ import type { HarnessDeliveryEnvelope } from "./harness-delivery-envelope.js";
4
5
  export declare const HARNESS_ESCALATE_TOOL_NAME: "harness_escalate";
5
6
  export declare const createHarnessEscalateTool: (input: {
6
7
  readonly coordinator: HarnessCoordinator;
7
8
  readonly guards: SessionGuards;
8
9
  readonly deliverInternalResult: (input: {
9
10
  readonly sessionID: string;
10
- readonly text: string;
11
+ readonly envelope: HarnessDeliveryEnvelope;
11
12
  }) => Promise<void>;
12
13
  }) => ToolDefinition;
13
14
  //# sourceMappingURL=harness-escalate-tool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"harness-escalate-tool.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-escalate-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAItE,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAGlE,eAAO,MAAM,0BAA0B,EAAG,kBAA2B,CAAA;AAErE,eAAO,MAAM,yBAAyB,GAAI,OAAO;IAC/C,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAA;IACxC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE;QACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KACtB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpB,KAAG,cA+BA,CAAA"}
1
+ {"version":3,"file":"harness-escalate-tool.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-escalate-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAItE,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AAG7E,eAAO,MAAM,0BAA0B,EAAG,kBAA2B,CAAA;AAErE,eAAO,MAAM,yBAAyB,GAAI,OAAO;IAC/C,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAA;IACxC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,qBAAqB,EAAE,CAAC,KAAK,EAAE;QACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAA;KAC3C,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpB,KAAG,cA2CA,CAAA"}
@@ -8,18 +8,27 @@ export const createHarnessEscalateTool = (input) => tool({
8
8
  args: {
9
9
  request: tool.schema.string().min(1),
10
10
  reason: tool.schema.string().min(1).optional(),
11
+ hypotheses: tool.schema
12
+ .array(tool.schema.string().min(1))
13
+ .describe("未经验证的判断假设列表(可选)。已通过验证命令确认的事实应写进 request 正文,只有未核实的推测才放入此列表。")
14
+ .optional(),
11
15
  },
12
16
  execute: async (args, context) => {
13
17
  assertPrimary(context);
14
18
  const request = args.reason === undefined ? args.request : `${args.request}\n移交原因:${args.reason}`;
19
+ const withHypotheses = args.hypotheses === undefined || args.hypotheses.length === 0
20
+ ? request
21
+ : `${request}\n\n待核实假设(未经证实,规划时须逐条核实,证伪结论需记录):\n${args.hypotheses
22
+ .map((claim, index) => `${index + 1}. ${claim}`)
23
+ .join("\n")}`;
15
24
  const result = admitHarnessRequest({
16
25
  coordinator: input.coordinator,
17
26
  guards: input.guards,
18
27
  deliverInternalResult: input.deliverInternalResult,
19
28
  sessionID: context.sessionID,
20
29
  messageID: context.messageID,
21
- inputText: request,
22
- routeDecision: classifyHarnessRequest(request),
30
+ inputText: withHypotheses,
31
+ routeDecision: classifyHarnessRequest(withHypotheses),
23
32
  });
24
33
  return {
25
34
  title: "Harness 工程任务移交",
@@ -1 +1 @@
1
- {"version":3,"file":"harness-escalate-tool.js","sourceRoot":"","sources":["../../src/plugin/harness-escalate-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAE1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAsB,MAAM,wBAAwB,CAAA;AAEhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEpE,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAA2B,CAAA;AAErE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,KAOzC,EAAkB,EAAE,CACnB,IAAI,CAAC;IACH,WAAW,EACT,8DAA8D;IAChE,IAAI,EAAE;QACJ,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACpC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC/C;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAC/B,aAAa,CAAC,OAAO,CAAC,CAAA;QACtB,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,IAAI,CAAC,MAAM,EAAE,CAAA;QACnF,MAAM,MAAM,GAAG,mBAAmB,CAAC;YACjC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;YAClD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO;YAClB,aAAa,EAAE,sBAAsB,CAAC,OAAO,CAAC;SAC/C,CAAC,CAAA;QACF,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,MAAM,EACJ,MAAM,KAAK,MAAM;gBACf,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,MAAM,KAAK,WAAW;oBACtB,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,gDAAgD;SACzD,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEJ,MAAM,aAAa,GAAG,CAAC,OAAoB,EAAQ,EAAE;IACnD,IAAI,OAAO,CAAC,KAAK,KAAK,0BAA0B,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,oCAAoC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;IACtE,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"harness-escalate-tool.js","sourceRoot":"","sources":["../../src/plugin/harness-escalate-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAE1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAsB,MAAM,wBAAwB,CAAA;AAGhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEpE,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAA2B,CAAA;AAErE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,KAOzC,EAAkB,EAAE,CACnB,IAAI,CAAC;IACH,WAAW,EACT,8DAA8D;IAChE,IAAI,EAAE;QACJ,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACpC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QAC9C,UAAU,EAAE,IAAI,CAAC,MAAM;aACpB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAClC,QAAQ,CACP,4DAA4D,CAC7D;aACA,QAAQ,EAAE;KACd;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAC/B,aAAa,CAAC,OAAO,CAAC,CAAA;QACtB,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,IAAI,CAAC,MAAM,EAAE,CAAA;QACnF,MAAM,cAAc,GAClB,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAC3D,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,GAAG,OAAO,sCAAsC,IAAI,CAAC,UAAU;iBAC5D,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;iBAC/C,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;QACrB,MAAM,MAAM,GAAG,mBAAmB,CAAC;YACjC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;YAClD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,cAAc;YACzB,aAAa,EAAE,sBAAsB,CAAC,cAAc,CAAC;SACtD,CAAC,CAAA;QACF,OAAO;YACL,KAAK,EAAE,gBAAgB;YACvB,MAAM,EACJ,MAAM,KAAK,MAAM;gBACf,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,MAAM,KAAK,WAAW;oBACtB,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,gDAAgD;SACzD,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEJ,MAAM,aAAa,GAAG,CAAC,OAAoB,EAAQ,EAAE;IACnD,IAAI,OAAO,CAAC,KAAK,KAAK,0BAA0B,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,oCAAoC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;IACtE,CAAC;AACH,CAAC,CAAA"}
@@ -43,6 +43,10 @@ declare const IntakeRequirementSchema: z.ZodReadonly<z.ZodObject<{
43
43
  routingRationale: z.ZodString;
44
44
  rejudgementTriggers: z.ZodReadonly<z.ZodArray<z.ZodString>>;
45
45
  }, z.core.$strict>>>;
46
+ hypotheses: z.ZodOptional<z.ZodArray<z.ZodReadonly<z.ZodObject<{
47
+ claim: z.ZodString;
48
+ evidence: z.ZodOptional<z.ZodString>;
49
+ }, z.core.$strict>>>>;
46
50
  targetRepository: z.ZodOptional<z.ZodString>;
47
51
  workspaceMutation: z.ZodOptional<z.ZodEnum<{
48
52
  allowed: "allowed";
@@ -95,6 +99,10 @@ declare const StartIntentSchema: z.ZodReadonly<z.ZodObject<{
95
99
  routingRationale: z.ZodString;
96
100
  rejudgementTriggers: z.ZodReadonly<z.ZodArray<z.ZodString>>;
97
101
  }, z.core.$strict>>>;
102
+ hypotheses: z.ZodOptional<z.ZodArray<z.ZodReadonly<z.ZodObject<{
103
+ claim: z.ZodString;
104
+ evidence: z.ZodOptional<z.ZodString>;
105
+ }, z.core.$strict>>>>;
98
106
  targetRepository: z.ZodOptional<z.ZodString>;
99
107
  workspaceMutation: z.ZodOptional<z.ZodEnum<{
100
108
  allowed: "allowed";
@@ -148,6 +156,10 @@ export declare const HarnessIntentSchema: z.ZodDiscriminatedUnion<[z.ZodReadonly
148
156
  routingRationale: z.ZodString;
149
157
  rejudgementTriggers: z.ZodReadonly<z.ZodArray<z.ZodString>>;
150
158
  }, z.core.$strict>>>;
159
+ hypotheses: z.ZodOptional<z.ZodArray<z.ZodReadonly<z.ZodObject<{
160
+ claim: z.ZodString;
161
+ evidence: z.ZodOptional<z.ZodString>;
162
+ }, z.core.$strict>>>>;
151
163
  targetRepository: z.ZodOptional<z.ZodString>;
152
164
  workspaceMutation: z.ZodOptional<z.ZodEnum<{
153
165
  allowed: "allowed";
@@ -1 +1 @@
1
- {"version":3,"file":"harness-intent.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-intent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAwBvB,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAsBhB,CAAA;AAEb,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAMV,CAAA;AAsDb,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAU9B,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA"}
1
+ {"version":3,"file":"harness-intent.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-intent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAwBvB,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAuBhB,CAAA;AAEb,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAMV,CAAA;AAsDb,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAU9B,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- import { ComplexityAssessmentSchema, RunIdSchema } from "../domain/index.js";
2
+ import { ComplexityAssessmentSchema, HypothesisSchema, RunIdSchema } from "../domain/index.js";
3
3
  import { RequirementIdSchema, WorkspaceMutationSchema } from "../domain/shared.js";
4
4
  const ActorSchema = z
5
5
  .object({
@@ -36,6 +36,7 @@ const IntakeRequirementSchema = z
36
36
  .readonly()
37
37
  .optional(),
38
38
  taskSchedulingAnalysis: TaskSchedulingAnalysisSchema.optional(),
39
+ hypotheses: z.array(HypothesisSchema).optional(),
39
40
  targetRepository: z.string().trim().min(1).optional(),
40
41
  workspaceMutation: WorkspaceMutationSchema.optional(),
41
42
  })
@@ -1 +1 @@
1
- {"version":3,"file":"harness-intent.js","sourceRoot":"","sources":["../../src/plugin/harness-intent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-intent.js","sourceRoot":"","sources":["../../src/plugin/harness-intent.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ type DefaultControllerInput = {
16
16
  readonly verificationRunner: VerificationRunner;
17
17
  readonly clock: ControllerClock;
18
18
  readonly ids: ControllerIdSource;
19
+ readonly onAgentSettled?: (runId: string, role: string, status: "completed" | "failed") => void;
19
20
  };
20
21
  export type HarnessPluginDependencies = {
21
22
  readonly loadConfig?: (projectRoot: string) => Promise<HarnessConfig>;
@@ -37,6 +38,7 @@ export type HarnessPluginRuntime = {
37
38
  readonly researchClients?: ResearchClients;
38
39
  readonly sessionGuards?: SessionGuards;
39
40
  readonly sessionAdapter?: SessionAdapter;
41
+ readonly store?: RunStore;
40
42
  };
41
43
  export type CreateHarnessCoordinatorOptions = CoordinatorOptions;
42
44
  export declare const createRuntime: ({ client, input, dependencies, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"harness-plugin-runtime.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-plugin-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-plugin-runtime.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-plugin-runtime.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { createLspClient } from "../tools/lsp-client.js";
10
10
  import { createNodeProcessRunner, createVerificationRunner, } from "../verification/index.js";
11
11
  import { createHarnessCoordinator, } from "./harness-coordinator.js";
12
12
  import { createHarnessIdSource, resolveHarnessProjectRoot } from "./harness-plugin-identifiers.js";
13
- import { createHarnessPluginScheduler } from "./harness-plugin-scheduler.js";
13
+ import { createHarnessPluginScheduler, } from "./harness-plugin-scheduler.js";
14
14
  const HARNESS_RESEARCH_ROLE_PAIRS = [
15
15
  [HARNESS_SESSION_ROLE.intake, HARNESS_ROLE_TO_AGENT_NAME.intake],
16
16
  [HARNESS_SESSION_ROLE.planner, HARNESS_ROLE_TO_AGENT_NAME.planner],
@@ -47,6 +47,26 @@ export const createRuntime = async ({ client, input, dependencies, }) => {
47
47
  completedAdmissionKeys: new Set(),
48
48
  internalSessionIds: new Set(),
49
49
  };
50
+ // 阶段推进闭环:子 agent 会话 settle 后,若该 run 无在途 advancement 且非终态则重踢推进。
51
+ // scheduler 在 controller 之后创建,这里用可变引用承接。
52
+ let scheduleAdvanceRef;
53
+ const kickAgentSettled = (runId) => {
54
+ const schedule = scheduleAdvanceRef;
55
+ if (schedule === undefined)
56
+ return;
57
+ const sessionID = [...sessionGuards.activeRunIdsBySession.entries()].find(([, mappedRunId]) => mappedRunId === runId)?.[0];
58
+ if (sessionID !== undefined) {
59
+ schedule({ sessionID, runId: runId });
60
+ return;
61
+ }
62
+ // 无宿主会话可投递进度时,仍以保证推进为目的:直接走带守卫的推进
63
+ const existing = sessionGuards.inFlightAdvancements.get(runId);
64
+ if (existing !== undefined)
65
+ return;
66
+ const advancement = controller.advanceRun(runId).then(() => undefined, () => undefined);
67
+ sessionGuards.inFlightAdvancements.set(runId, advancement);
68
+ void advancement.finally(() => sessionGuards.inFlightAdvancements.delete(runId));
69
+ };
50
70
  const controller = (dependencies.createController ?? defaultCreateController)({
51
71
  config,
52
72
  projectRoot,
@@ -55,6 +75,14 @@ export const createRuntime = async ({ client, input, dependencies, }) => {
55
75
  verificationRunner,
56
76
  clock,
57
77
  ids,
78
+ onAgentSettled: (runId, role, status) => {
79
+ try {
80
+ kickAgentSettled(runId);
81
+ }
82
+ catch (error) {
83
+ process.stderr.write(`HARNESS_AGENT_SETTLED_KICK_FAILED ${JSON.stringify({ runId, role, status, error: String(error) })}\n`);
84
+ }
85
+ },
58
86
  });
59
87
  const coordinator = (dependencies.createCoordinator ?? defaultCreateCoordinator)({
60
88
  config,
@@ -88,12 +116,15 @@ export const createRuntime = async ({ client, input, dependencies, }) => {
88
116
  ...(store.deletePendingStart === undefined
89
117
  ? {}
90
118
  : { deletePendingStart: store.deletePendingStart.bind(store) }),
91
- scheduleAdvance: createHarnessPluginScheduler({
92
- client,
93
- controller,
94
- guards: sessionGuards,
95
- projectRoot,
96
- }),
119
+ scheduleAdvance: (input) => {
120
+ scheduleAdvanceRef?.(input);
121
+ },
122
+ });
123
+ scheduleAdvanceRef = createHarnessPluginScheduler({
124
+ client,
125
+ controller,
126
+ guards: sessionGuards,
127
+ projectRoot,
97
128
  });
98
129
  return {
99
130
  config,
@@ -103,6 +134,7 @@ export const createRuntime = async ({ client, input, dependencies, }) => {
103
134
  researchClients,
104
135
  sessionGuards,
105
136
  sessionAdapter,
137
+ store,
106
138
  };
107
139
  };
108
140
  const defaultLoadConfig = (projectRoot) => loadHarnessConfig({ projectRoot });
@@ -142,6 +174,7 @@ const defaultCreateController = (input) => createRunController({
142
174
  maxRunAttempts: input.config.maxRunAttempts,
143
175
  sessionTimeoutMs: input.config.sessionTimeoutMs,
144
176
  executionCategories: input.config.executionCategories,
177
+ ...(input.onAgentSettled === undefined ? {} : { onAgentSettled: input.onAgentSettled }),
145
178
  workspacePolicy: {
146
179
  allowDirty: false,
147
180
  allowNonGit: input.config.allowNonGitWorkspace,
@@ -1 +1 @@
1
- {"version":3,"file":"harness-plugin-runtime.js","sourceRoot":"","sources":["../../src/plugin/harness-plugin-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-plugin-runtime.js","sourceRoot":"","sources":["../../src/plugin/harness-plugin-runtime.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,14 @@ type HarnessPluginSchedulerInput = {
8
8
  readonly guards: SessionGuards;
9
9
  readonly projectRoot: string;
10
10
  };
11
- export declare const createHarnessPluginScheduler: (input: HarnessPluginSchedulerInput) => ((input: {
11
+ export type HarnessPluginScheduler = (input: {
12
12
  readonly sessionID: string;
13
13
  readonly runId: Run["runId"];
14
- }) => void);
14
+ }) => void;
15
+ /**
16
+ * 子 agent 会话 settle 后的重踢入口:仅在该 run 无在途 advancement 且非终态时
17
+ * 调度推进循环;sessionID 未知(钩子触发)时复用 activeRunIdsBySession 反查或直接推进。
18
+ */
19
+ export declare const createHarnessPluginScheduler: (input: HarnessPluginSchedulerInput) => HarnessPluginScheduler;
15
20
  export {};
16
21
  //# sourceMappingURL=harness-plugin-scheduler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"harness-plugin-scheduler.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-plugin-scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAQ3D,KAAK,2BAA2B,GAAG;IACjC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B,CAAA;AA4ED,eAAO,MAAM,4BAA4B,GACvC,OAAO,2BAA2B,KACjC,CAAC,CAAC,KAAK,EAAE;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;CAAE,KAAK,IAAI,CAuChF,CAAA"}
1
+ {"version":3,"file":"harness-plugin-scheduler.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-plugin-scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAS3D,KAAK,2BAA2B,GAAG;IACjC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B,CAAA;AAuED,MAAM,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE;IAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;CAC7B,KAAK,IAAI,CAAA;AAEV;;;GAGG;AACH,eAAO,MAAM,4BAA4B,GACvC,OAAO,2BAA2B,KACjC,sBAuCF,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { isTerminalRunStatus } from "../controller/run-state.js";
2
- import { createInternalCompletionMessage, createInternalFailureMessage, createInternalProgressMessage, } from "./harness-chat-protocol.js";
2
+ import { createFailureDeliveryEnvelope, createProgressDeliveryEnvelope, createSuccessDeliveryEnvelope, } from "./harness-delivery-envelope.js";
3
3
  import { sanitizeHarnessUserFacingError } from "./harness-user-facing-errors.js";
4
4
  const promptHarnessSyntheticResult = async (input) => {
5
5
  await input.client.session.promptAsync({
@@ -10,21 +10,21 @@ const promptHarnessSyntheticResult = async (input) => {
10
10
  parts: [
11
11
  {
12
12
  type: "text",
13
- text: input.text,
13
+ text: input.envelope.userChannel,
14
14
  synthetic: true,
15
- metadata: { source: "harness" },
15
+ metadata: { source: "harness", channel: "user" },
16
+ },
17
+ {
18
+ type: "text",
19
+ text: input.envelope.agentChannel,
20
+ synthetic: true,
21
+ metadata: { source: "harness", channel: "agent" },
16
22
  },
17
23
  ],
18
24
  },
19
25
  throwOnError: true,
20
26
  });
21
27
  };
22
- const createAdvanceSuccessMessage = (run) => createInternalCompletionMessage({
23
- kind: "run",
24
- operation: "status",
25
- run,
26
- });
27
- const createAdvanceFailureMessage = (error) => createInternalFailureMessage(sanitizeHarnessUserFacingError(error));
28
28
  const ADVANCE_STOP_STATUSES = new Set([
29
29
  "clarification_required",
30
30
  "evidence_gap",
@@ -52,12 +52,14 @@ const advanceUntilSettled = async (controller, runId, onProgress) => {
52
52
  return current;
53
53
  const next = await controller.advanceRun(runId);
54
54
  await reportProgress(next);
55
- if (next.status === current.status)
56
- return next;
57
55
  current = next;
58
56
  }
59
57
  return current;
60
58
  };
59
+ /**
60
+ * 子 agent 会话 settle 后的重踢入口:仅在该 run 无在途 advancement 且非终态时
61
+ * 调度推进循环;sessionID 未知(钩子触发)时复用 activeRunIdsBySession 反查或直接推进。
62
+ */
61
63
  export const createHarnessPluginScheduler = (input) => {
62
64
  return ({ sessionID, runId }) => {
63
65
  const existing = input.guards.inFlightAdvancements.get(runId);
@@ -69,21 +71,21 @@ export const createHarnessPluginScheduler = (input) => {
69
71
  client: input.client,
70
72
  projectRoot: input.projectRoot,
71
73
  sessionID,
72
- text: createInternalProgressMessage({ kind: "run", operation: "status", run }),
74
+ envelope: createProgressDeliveryEnvelope({ kind: "run", operation: "status", run }),
73
75
  });
74
76
  }).then(async (run) => {
75
77
  await promptHarnessSyntheticResult({
76
78
  client: input.client,
77
79
  projectRoot: input.projectRoot,
78
80
  sessionID,
79
- text: createAdvanceSuccessMessage(run),
81
+ envelope: createSuccessDeliveryEnvelope({ kind: "run", operation: "status", run }),
80
82
  });
81
83
  }, async (error) => {
82
84
  await promptHarnessSyntheticResult({
83
85
  client: input.client,
84
86
  projectRoot: input.projectRoot,
85
87
  sessionID,
86
- text: createAdvanceFailureMessage(error),
88
+ envelope: createFailureDeliveryEnvelope(sanitizeHarnessUserFacingError(error)),
87
89
  });
88
90
  });
89
91
  input.guards.inFlightAdvancements.set(runId, advancement.then(() => undefined));
@@ -1 +1 @@
1
- {"version":3,"file":"harness-plugin-scheduler.js","sourceRoot":"","sources":["../../src/plugin/harness-plugin-scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-plugin-scheduler.js","sourceRoot":"","sources":["../../src/plugin/harness-plugin-scheduler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"harness-requirement.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-requirement.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,OAAO,KAAK,EAAE,kBAAkB,EAAqB,MAAM,qBAAqB,CAAA;AAEhF,eAAO,MAAM,kBAAkB,GAAI,QAAQ,kBAAkB,KAAG,gBA0C/D,CAAA"}
1
+ {"version":3,"file":"harness-requirement.d.ts","sourceRoot":"","sources":["../../src/plugin/harness-requirement.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,OAAO,KAAK,EAAE,kBAAkB,EAAqB,MAAM,qBAAqB,CAAA;AAEhF,eAAO,MAAM,kBAAkB,GAAI,QAAQ,kBAAkB,KAAG,gBA8C/D,CAAA"}
@@ -15,6 +15,9 @@ export const toRequirementInput = (intent) => {
15
15
  ...(intent.requirement.taskSchedulingAnalysis
16
16
  ? { taskSchedulingAnalysis: intent.requirement.taskSchedulingAnalysis }
17
17
  : {}),
18
+ ...(intent.requirement.hypotheses === undefined
19
+ ? {}
20
+ : { hypotheses: intent.requirement.hypotheses }),
18
21
  ...(intent.requirement.targetRepository
19
22
  ? { targetRepository: intent.requirement.targetRepository }
20
23
  : {}),
@@ -36,6 +39,7 @@ export const toRequirementInput = (intent) => {
36
39
  ...(requirement.taskSchedulingAnalysis
37
40
  ? { taskSchedulingAnalysis: requirement.taskSchedulingAnalysis }
38
41
  : {}),
42
+ ...(requirement.hypotheses === undefined ? {} : { hypotheses: requirement.hypotheses }),
39
43
  ...(requirement.targetRepository ? { targetRepository: requirement.targetRepository } : {}),
40
44
  ...(requirement.workspaceMutation === undefined
41
45
  ? {}